<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Interactive BOM for KiCAD</title>
  <style type="text/css">
:root {
  --pcb-edge-color: black;
  --pad-color: #878787;
  --pad-hole-color: #CCCCCC;
  --pad-color-highlight: #D04040;
  --pin1-outline-color: #ffb629;
  --pin1-outline-color-highlight: #b4ff03;
  --silkscreen-edge-color: #aa4;
  --silkscreen-polygon-color: #4aa;
  --silkscreen-text-color: #4aa;
  --fabrication-edge-color: #907651;
  --fabrication-polygon-color: #907651;
  --fabrication-text-color: #a27c24;
  --track-color: #def5f1;
  --track-color-highlight: #D04040;
  --zone-color: #def5f1;
  --zone-color-highlight: #d0404080;
}

html, body {
  margin: 0px;
  height: 100%;
  font-family: Verdana, sans-serif;
}

.dark.topmostdiv {
  --pcb-edge-color: #eee;
  --pad-color: #808080;
  --pin1-outline-color: #ffa800;
  --pin1-outline-color-highlight: #ccff00;
  --track-color: #42524f;
  --zone-color: #42524f;
  background-color: #252c30;
  color: #eee;
}

button {
  background-color: #eee;
  border: 1px solid #888;
  color: black;
  height: 44px;
  width: 44px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
  font-weight: bolder;
}

.dark button {
  /* This will be inverted */
  background-color: #c3b7b5;
}

button.depressed {
  background-color: #0a0;
  color: white;
}

.dark button.depressed {
  /* This will be inverted */
  background-color: #b3b;
}

button:focus {
  outline: 0;
}

button#tb-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' fill='none' stroke='%23000' stroke-width='.4' stroke-linejoin='round'/%3E%3Cpath d='M1.32 290.12h5.82M1.32 291.45h5.82' fill='none' stroke='%23000' stroke-width='.4'/%3E%3Cpath d='M4.37 292.5v4.23M.26 292.63H8.2' fill='none' stroke='%23000' stroke-width='.3'/%3E%3Ctext font-weight='700' font-size='3.17' font-family='sans-serif'%3E%3Ctspan x='1.35' y='295.73'%3EF%3C/tspan%3E%3Ctspan x='5.03' y='295.68'%3EB%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E%0A");
}

button#lr-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' fill='none' stroke='%23000' stroke-width='.4' stroke-linejoin='round'/%3E%3Cpath d='M1.06 290.12H3.7m-2.64 1.33H3.7m-2.64 1.32H3.7m-2.64 1.3H3.7m-2.64 1.33H3.7' fill='none' stroke='%23000' stroke-width='.4'/%3E%3Cpath d='M4.37 288.8v7.94m0-4.11h3.96' fill='none' stroke='%23000' stroke-width='.3'/%3E%3Ctext font-weight='700' font-size='3.17' font-family='sans-serif'%3E%3Ctspan x='5.11' y='291.96'%3EF%3C/tspan%3E%3Ctspan x='5.03' y='295.68'%3EB%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E%0A");
}

button#bom-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)' fill='none' stroke='%23000' stroke-width='.4'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' stroke-linejoin='round'/%3E%3Cpath d='M1.59 290.12h5.29M1.59 291.45h5.33M1.59 292.75h5.33M1.59 294.09h5.33M1.59 295.41h5.33'/%3E%3C/g%3E%3C/svg%3E");
}

button#bom-grouped-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cg stroke='%23000' stroke-linejoin='round' class='layer'%3E%3Crect width='29' height='29' x='1.5' y='1.5' stroke-width='2' fill='%23fff' rx='5' ry='5'/%3E%3Cpath stroke-linecap='square' stroke-width='2' d='M6 10h4m4 0h5m4 0h3M6.1 22h3m3.9 0h5m4 0h4m-16-8h4m4 0h4'/%3E%3Cpath stroke-linecap='null' d='M5 17.5h22M5 26.6h22M5 5.5h22'/%3E%3C/g%3E%3C/svg%3E");
}

button#bom-ungrouped-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cg stroke='%23000' stroke-linejoin='round' class='layer'%3E%3Crect width='29' height='29' x='1.5' y='1.5' stroke-width='2' fill='%23fff' rx='5' ry='5'/%3E%3Cpath stroke-linecap='square' stroke-width='2' d='M6 10h4m-4 8h3m-3 8h4'/%3E%3Cpath stroke-linecap='null' d='M5 13.5h22m-22 8h22M5 5.5h22'/%3E%3C/g%3E%3C/svg%3E");
}

button#bom-netlist-btn {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cg fill='none' stroke='%23000' class='layer'%3E%3Crect width='29' height='29' x='1.5' y='1.5' stroke-width='2' fill='%23fff' rx='5' ry='5'/%3E%3Cpath stroke-width='2' d='M6 26l6-6v-8m13.8-6.3l-6 6v8'/%3E%3Ccircle cx='11.8' cy='9.5' r='2.8' stroke-width='2'/%3E%3Ccircle cx='19.8' cy='22.8' r='2.8' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E");
}

button#copy {
  background-image: url("data:image/svg+xml,%3Csvg height='48' viewBox='0 0 48 48' width='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h48v48h-48z' fill='none'/%3E%3Cpath d='M32 2h-24c-2.21 0-4 1.79-4 4v28h4v-28h24v-4zm6 8h-22c-2.21 0-4 1.79-4 4v28c0 2.21 1.79 4 4 4h22c2.21 0 4-1.79 4-4v-28c0-2.21-1.79-4-4-4zm0 32h-22v-28h22v28z'/%3E%3C/svg%3E");
  background-position: 6px 6px;
  background-repeat: no-repeat;
  background-size: 26px 26px;
  border-radius: 6px;
  height: 40px;
  width: 40px;
  margin: 10px 5px;
}

button#copy:active {
    box-shadow: inset 0px 0px 5px #6c6c6c;
}

textarea.clipboard-temp {
  position: fixed;
  top: 0;
  left: 0;
  width: 2em;
  height: 2em;
  padding: 0;
  border: None;
  outline: None;
  box-shadow: None;
  background: transparent;
}

.left-most-button {
  border-right: 0;
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}

.middle-button {
  border-right: 0;
}

.right-most-button {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

.button-container {
  font-size: 0;
  margin: 10px 10px 10px 0px;
}

.dark .button-container {
  filter: invert(1);
}

.button-container button {
  background-size: 32px 32px;
  background-position: 5px 5px;
  background-repeat: no-repeat;
}

@media print {
  .hideonprint {
    display: none;
  }
}

canvas {
  cursor: crosshair;
}

canvas:active {
  cursor: grabbing;
}

.fileinfo {
  width: 100%;
  max-width: 1000px;
  border: none;
  padding: 5px;
}

.fileinfo .title {
  font-size: 20pt;
  font-weight: bold;
}

.fileinfo td {
  overflow: hidden;
  white-space: nowrap;
  max-width: 1px;
  width: 50%;
  text-overflow: ellipsis;
}

.bom {
  border-collapse: collapse;
  font-family: Consolas, "DejaVu Sans Mono", Monaco, monospace;
  font-size: 10pt;
  table-layout: fixed;
  width: 100%;
  margin-top: 1px;
}

.bom th, .bom td {
  border: 1px solid black;
  padding: 5px;
  word-wrap: break-word;
  text-align: center;
  position: relative;
}

.dark .bom th, .dark .bom td {
  border: 1px solid #777;
}

.bom th {
  background-color: #CCCCCC;
  background-clip: padding-box;
}

.dark .bom th {
  background-color: #3b4749;
}

.bom tr.highlighted:nth-child(n) {
  background-color: #cfc;
}

.dark .bom tr.highlighted:nth-child(n) {
  background-color: #226022;
}

.bom tr:nth-child(even) {
  background-color: #f2f2f2;
}

.dark .bom tr:nth-child(even) {
  background-color: #313b40;
}

.bom tr.checked {
  color: #aaa;
}

.dark .bom tr.checked {
  color: #666;
}

.bom tr {
  transition: background-color 0.2s;
}

.bom .numCol {
  width: 25px;
}

.bom .Description {
  width: 10%;
}

.bom .Part {
  width: 10%;
}

.bom .Value {
  width: 15%;
}

.bom .Quantity {
  width: 65px;
}

.bom th .sortmark {
  position: absolute;
  right: 1px;
  top: 1px;
  margin-top: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent #221 transparent;
  transform-origin: 50% 85%;
  transition: opacity 0.2s, transform 0.4s;
}

.dark .bom th .sortmark {
  filter: invert(1);
}

.bom th .sortmark.none {
  opacity: 0;
}

.bom th .sortmark.desc {
  transform: rotate(180deg);
}

.bom th:hover .sortmark.none {
  opacity: 0.5;
}

.bom .bom-checkbox {
  width: 30px;
  position: relative;
  user-select: none;
  -moz-user-select: none;
}

.bom .bom-checkbox:before {
  content: "";
  position: absolute;
  border-width: 15px;
  border-style: solid;
  border-color: #51829f transparent transparent transparent;
  visibility: hidden;
  top: -15px;
}

.bom .bom-checkbox:after {
  content: "Double click to set/unset all";
  position: absolute;
  color: white;
  top: -35px;
  left: -26px;
  background: #51829f;
  padding: 5px 15px;
  border-radius: 8px;
  white-space: nowrap;
  visibility: hidden;
}

.bom .bom-checkbox:hover:before, .bom .bom-checkbox:hover:after {
  visibility: visible;
  transition: visibility 0.2s linear 1s;
}

.split {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow-y: auto;
  overflow-x: hidden;
  background-color: inherit;
}

.split.split-horizontal, .gutter.gutter-horizontal {
  height: 100%;
  float: left;
}

.gutter {
  background-color: #ddd;
  background-repeat: no-repeat;
  background-position: 50%;
  transition: background-color 0.3s;
}

.dark .gutter {
  background-color: #777;
}

.gutter.gutter-horizontal {
  background-image: url('');
  cursor: ew-resize;
  width: 5px;
}

.gutter.gutter-vertical {
  background-image: url('');
  cursor: ns-resize;
  height: 5px;
}

.searchbox {
  float: left;
  height: 40px;
  margin: 10px 5px;
  padding: 12px 32px;
  font-family: Consolas, "DejaVu Sans Mono", Monaco, monospace;
  font-size: 18px;
  box-sizing: border-box;
  border: 1px solid #888;
  border-radius: 6px;
  outline: none;
  background-color: #eee;
  transition: background-color 0.2s, border 0.2s;
  background-image: url('');
  background-position: 10px 10px;
  background-repeat: no-repeat;
}

.dark .searchbox {
  background-color: #111;
  color: #eee;
}

.searchbox::placeholder {
  color: #ccc;
}

.dark .searchbox::placeholder {
  color: #666;
}

.filter {
  width: calc(60% - 64px);
}

.reflookup {
  width: calc(40% - 10px);
}

input[type=text]:focus {
  background-color: white;
  border: 1px solid #333;
}

.dark input[type=text]:focus {
  background-color: #333;
  border: 1px solid #ccc;
}

mark.highlight {
  background-color: #5050ff;
  color: #fff;
  padding: 2px;
  border-radius: 6px;
}

.dark mark.highlight {
  background-color: #76a6da;
  color: #111;
}

.menubtn {
  background-color: white;
  border: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 20 20'%3E%3Cpath fill='none' d='M0 0h20v20H0V0z'/%3E%3Cpath d='M15.95 10.78c.03-.25.05-.51.05-.78s-.02-.53-.06-.78l1.69-1.32c.15-.12.19-.34.1-.51l-1.6-2.77c-.1-.18-.31-.24-.49-.18l-1.99.8c-.42-.32-.86-.58-1.35-.78L12 2.34c-.03-.2-.2-.34-.4-.34H8.4c-.2 0-.36.14-.39.34l-.3 2.12c-.49.2-.94.47-1.35.78l-1.99-.8c-.18-.07-.39 0-.49.18l-1.6 2.77c-.1.18-.06.39.1.51l1.69 1.32c-.04.25-.07.52-.07.78s.02.53.06.78L2.37 12.1c-.15.12-.19.34-.1.51l1.6 2.77c.1.18.31.24.49.18l1.99-.8c.42.32.86.58 1.35.78l.3 2.12c.04.2.2.34.4.34h3.2c.2 0 .37-.14.39-.34l.3-2.12c.49-.2.94-.47 1.35-.78l1.99.8c.18.07.39 0 .49-.18l1.6-2.77c.1-.18.06-.39-.1-.51l-1.67-1.32zM10 13c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3z'/%3E%3C/svg%3E%0A");
  background-position: center;
  background-repeat: no-repeat;
}

.statsbtn {
  background-color: white;
  border: none;
  background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6h28v24H4V6zm0 8h28v8H4m9-16v24h10V5.8' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}

.iobtn {
  background-color: white;
  border: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M3 33v-7l6.8-7h16.5l6.7 7v7H3zM3.2 26H33M21 9l5-5.9 5 6h-2.5V15h-5V9H21zm-4.9 0l-5 6-5-6h2.5V3h5v6h2.5z'/%3E%3Cpath fill='none' stroke='%23000' d='M6.1 29.5H10'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
}

.dark .statsbtn, .dark .savebtn, .dark .menubtn, .dark .iobtn {
  filter: invert(1);
}

.flexbox {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.savebtn {
  background-color: #d6d6d6;
  width: auto;
  height: 30px;
  flex-grow: 1;
  margin: 5px;
  border-radius: 4px;
}

.savebtn:active {
  background-color: #0a0;
  color: white;
}

.dark .savebtn:active {
  /* This will be inverted */
  background-color: #b3b;
}

.stats {
  border-collapse: collapse;
  font-size: 12pt;
  table-layout: fixed;
  width: 100%;
  min-width: 450px;
}

.dark .stats td {
  border: 1px solid #bbb;
}

.stats td {
  border: 1px solid black;
  padding: 5px;
  word-wrap: break-word;
  text-align: center;
  position: relative;
}

#checkbox-stats div {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

#checkbox-stats .bar {
  background-color: rgba(28, 251, 0, 0.6);
}

.menu {
  position: relative;
  display: inline-block;
  margin: 10px 10px 10px 0px;
}

.menu-content {
  display: none;
  position: absolute;
  background-color: white;
  right: 0;
  min-width: 300px;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 100;
  padding: 8px;
}

.dark .menu-content {
  background-color: #111;
}

.menu:hover .menu-content {
  display: block;
}

.menu:hover .menubtn, .menu:hover .iobtn, .menu:hover .statsbtn {
  background-color: #eee;
}

.menu-label {
  display: inline-block;
  padding: 8px;
  border: 1px solid #ccc;
  border-top: 0;
  width: calc(100% - 18px);
}

.menu-label-top {
  border-top: 1px solid #ccc;
}

.menu-textbox {
  float: left;
  height: 24px;
  margin: 10px 5px;
  padding: 5px 5px;
  font-family: Consolas, "DejaVu Sans Mono", Monaco, monospace;
  font-size: 14px;
  box-sizing: border-box;
  border: 1px solid #888;
  border-radius: 4px;
  outline: none;
  background-color: #eee;
  transition: background-color 0.2s, border 0.2s;
  width: calc(100% - 10px);
}

.menu-textbox.invalid, .dark .menu-textbox.invalid {
  color: red;
}

.dark .menu-textbox {
  background-color: #222;
  color: #eee;
}

.radio-container {
  margin: 4px;
}

.topmostdiv {
  width: 100%;
  height: 100%;
  background-color: white;
  transition: background-color 0.3s;
}

#top {
  height: 78px;
  border-bottom: 2px solid black;
}

.dark #top {
  border-bottom: 2px solid #ccc;
}

#dbg {
  display: block;
}

::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: #aaa;
}

::-webkit-scrollbar-thumb {
  background: #666;
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.slider {
  -webkit-appearance: none;
  width: 100%;
  margin: 3px 0;
  padding: 0;
  outline: none;
  opacity: 0.7;
  -webkit-transition: .2s;
  transition: opacity .2s;
  border-radius: 3px;
}

.slider:hover {
  opacity: 1;
}

.slider:focus {
  outline: none;
}

.slider::-webkit-slider-runnable-track {
  -webkit-appearance: none;
  width: 100%;
  height: 8px;
  background: #d3d3d3;
  border-radius: 3px;
  border: none;
}

.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #0a0;
  cursor: pointer;
  margin-top: -4px;
}

.dark .slider::-webkit-slider-thumb {
  background: #3d3;
}

.slider::-moz-range-thumb {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #0a0;
  cursor: pointer;
}

.slider::-moz-range-track {
  height: 8px;
  background: #d3d3d3;
  border-radius: 3px;
}

.dark .slider::-moz-range-thumb {
  background: #3d3;
}

.slider::-ms-track {
  width: 100%;
  height: 8px;
  border-width: 3px 0;
  background: transparent;
  border-color: transparent;
  color: transparent;
  transition: opacity .2s;
}

.slider::-ms-fill-lower {
  background: #d3d3d3;
  border: none;
  border-radius: 3px;
}

.slider::-ms-fill-upper {
  background: #d3d3d3;
  border: none;
  border-radius: 3px;
}

.slider::-ms-thumb {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #0a0;
  cursor: pointer;
  margin: 0;
}

.shameless-plug {
  font-size: 0.8em;
  text-align: center;
  display: block;
}

a {
  color: #0278a4;
}

.dark a {
  color: #00b9fd;
}

#frontcanvas, #backcanvas {
    touch-action: none;
}

 
  </style>
  <script type="text/javascript" >
///////////////////////////////////////////////
/*
  Split.js - v1.3.5
  MIT License
  https://github.com/nathancahill/Split.js
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Split=t()}(this,function(){"use strict";var e=window,t=e.document,n="addEventListener",i="removeEventListener",r="getBoundingClientRect",s=function(){return!1},o=e.attachEvent&&!e[n],a=["","-webkit-","-moz-","-o-"].filter(function(e){var n=t.createElement("div");return n.style.cssText="width:"+e+"calc(9px)",!!n.style.length}).shift()+"calc",l=function(e){return"string"==typeof e||e instanceof String?t.querySelector(e):e};return function(u,c){function z(e,t,n){var i=A(y,t,n);Object.keys(i).forEach(function(t){return e.style[t]=i[t]})}function h(e,t){var n=B(y,t);Object.keys(n).forEach(function(t){return e.style[t]=n[t]})}function f(e){var t=E[this.a],n=E[this.b],i=t.size+n.size;t.size=e/this.size*i,n.size=i-e/this.size*i,z(t.element,t.size,this.aGutterSize),z(n.element,n.size,this.bGutterSize)}function m(e){var t;this.dragging&&((t="touches"in e?e.touches[0][b]-this.start:e[b]-this.start)<=E[this.a].minSize+M+this.aGutterSize?t=E[this.a].minSize+this.aGutterSize:t>=this.size-(E[this.b].minSize+M+this.bGutterSize)&&(t=this.size-(E[this.b].minSize+this.bGutterSize)),f.call(this,t),c.onDrag&&c.onDrag())}function g(){var e=E[this.a].element,t=E[this.b].element;this.size=e[r]()[y]+t[r]()[y]+this.aGutterSize+this.bGutterSize,this.start=e[r]()[G]}function d(){var t=this,n=E[t.a].element,r=E[t.b].element;t.dragging&&c.onDragEnd&&c.onDragEnd(),t.dragging=!1,e[i]("mouseup",t.stop),e[i]("touchend",t.stop),e[i]("touchcancel",t.stop),t.parent[i]("mousemove",t.move),t.parent[i]("touchmove",t.move),delete t.stop,delete t.move,n[i]("selectstart",s),n[i]("dragstart",s),r[i]("selectstart",s),r[i]("dragstart",s),n.style.userSelect="",n.style.webkitUserSelect="",n.style.MozUserSelect="",n.style.pointerEvents="",r.style.userSelect="",r.style.webkitUserSelect="",r.style.MozUserSelect="",r.style.pointerEvents="",t.gutter.style.cursor="",t.parent.style.cursor=""}function S(t){var i=this,r=E[i.a].element,o=E[i.b].element;!i.dragging&&c.onDragStart&&c.onDragStart(),t.preventDefault(),i.dragging=!0,i.move=m.bind(i),i.stop=d.bind(i),e[n]("mouseup",i.stop),e[n]("touchend",i.stop),e[n]("touchcancel",i.stop),i.parent[n]("mousemove",i.move),i.parent[n]("touchmove",i.move),r[n]("selectstart",s),r[n]("dragstart",s),o[n]("selectstart",s),o[n]("dragstart",s),r.style.userSelect="none",r.style.webkitUserSelect="none",r.style.MozUserSelect="none",r.style.pointerEvents="none",o.style.userSelect="none",o.style.webkitUserSelect="none",o.style.MozUserSelect="none",o.style.pointerEvents="none",i.gutter.style.cursor=j,i.parent.style.cursor=j,g.call(i)}function v(e){e.forEach(function(t,n){if(n>0){var i=F[n-1],r=E[i.a],s=E[i.b];r.size=e[n-1],s.size=t,z(r.element,r.size,i.aGutterSize),z(s.element,s.size,i.bGutterSize)}})}function p(){F.forEach(function(e){e.parent.removeChild(e.gutter),E[e.a].element.style[y]="",E[e.b].element.style[y]=""})}void 0===c&&(c={});var y,b,G,E,w=l(u[0]).parentNode,D=e.getComputedStyle(w).flexDirection,U=c.sizes||u.map(function(){return 100/u.length}),k=void 0!==c.minSize?c.minSize:100,x=Array.isArray(k)?k:u.map(function(){return k}),L=void 0!==c.gutterSize?c.gutterSize:10,M=void 0!==c.snapOffset?c.snapOffset:30,O=c.direction||"horizontal",j=c.cursor||("horizontal"===O?"ew-resize":"ns-resize"),C=c.gutter||function(e,n){var i=t.createElement("div");return i.className="gutter gutter-"+n,i},A=c.elementStyle||function(e,t,n){var i={};return"string"==typeof t||t instanceof String?i[e]=t:i[e]=o?t+"%":a+"("+t+"% - "+n+"px)",i},B=c.gutterStyle||function(e,t){return n={},n[e]=t+"px",n;var n};"horizontal"===O?(y="width","clientWidth",b="clientX",G="left","paddingLeft"):"vertical"===O&&(y="height","clientHeight",b="clientY",G="top","paddingTop");var F=[];return E=u.map(function(e,t){var i,s={element:l(e),size:U[t],minSize:x[t]};if(t>0&&(i={a:t-1,b:t,dragging:!1,isFirst:1===t,isLast:t===u.length-1,direction:O,parent:w},i.aGutterSize=L,i.bGutterSize=L,i.isFirst&&(i.aGutterSize=L/2),i.isLast&&(i.bGutterSize=L/2),"row-reverse"===D||"column-reverse"===D)){var a=i.a;i.a=i.b,i.b=a}if(!o&&t>0){var c=C(t,O);h(c,L),c[n]("mousedown",S.bind(i)),c[n]("touchstart",S.bind(i)),w.insertBefore(c,s.element),i.gutter=c}0===t||t===u.length-1?z(s.element,s.size,L/2):z(s.element,s.size,L);var f=s.element[r]()[y];return f<s.minSize&&(s.minSize=f),t>0&&F.push(i),s}),o?{setSizes:v,destroy:p}:{setSizes:v,getSizes:function(){return E.map(function(e){return e.size})},collapse:function(e){if(e===F.length){var t=F[e-1];g.call(t),o||f.call(t,t.size-t.bGutterSize)}else{var n=F[e];g.call(n),o||f.call(n,n.aGutterSize)}},destroy:p}}});

///////////////////////////////////////////////

///////////////////////////////////////////////
// Copyright (c) 2013 Pieroxy <pieroxy@pieroxy.net>
// This work is free. You can redistribute it and/or modify it
// under the terms of the WTFPL, Version 2
// For more information see LICENSE.txt or http://www.wtfpl.net/
//
// For more information, the home page:
// http://pieroxy.net/blog/pages/lz-string/testing.html
//
// LZ-based compression algorithm, version 1.4.4
var LZString=function(){var o=String.fromCharCode,i={};var n={decompressFromBase64:function(o){return null==o?"":""==o?null:n._decompress(o.length,32,function(n){return function(o,n){if(!i[o]){i[o]={};for(var t=0;t<o.length;t++)i[o][o.charAt(t)]=t}return i[o][n]}("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",o.charAt(n))})},_decompress:function(i,n,t){var r,e,a,s,p,u,l,f=[],c=4,d=4,h=3,v="",g=[],m={val:t(0),position:n,index:1};for(r=0;r<3;r+=1)f[r]=r;for(a=0,p=Math.pow(2,2),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;switch(a){case 0:for(a=0,p=Math.pow(2,8),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;l=o(a);break;case 1:for(a=0,p=Math.pow(2,16),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;l=o(a);break;case 2:return""}for(f[3]=l,e=l,g.push(l);;){if(m.index>i)return"";for(a=0,p=Math.pow(2,h),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;switch(l=a){case 0:for(a=0,p=Math.pow(2,8),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;f[d++]=o(a),l=d-1,c--;break;case 1:for(a=0,p=Math.pow(2,16),u=1;u!=p;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=n,m.val=t(m.index++)),a|=(s>0?1:0)*u,u<<=1;f[d++]=o(a),l=d-1,c--;break;case 2:return g.join("")}if(0==c&&(c=Math.pow(2,h),h++),f[l])v=f[l];else{if(l!==d)return null;v=e+e.charAt(0)}g.push(v),f[d++]=e+v.charAt(0),e=v,0==--c&&(c=Math.pow(2,h),h++)}}};return n}();"function"==typeof define&&define.amd?define(function(){return LZString}):"undefined"!=typeof module&&null!=module?module.exports=LZString:"undefined"!=typeof angular&&null!=angular&&angular.module("LZString",[]).factory("LZString",function(){return LZString});
///////////////////////////////////////////////

///////////////////////////////////////////////
/*!
 * PEP v0.4.3 | https://github.com/jquery/PEP
 * Copyright jQuery Foundation and other contributors | http://jquery.org/license
 */
! function (a, b) {
  "object" == typeof exports && "undefined" != typeof module ? module.exports = b() : "function" == typeof define && define.amd ? define(b) : a.PointerEventsPolyfill = b()
}(this, function () {
  "use strict";

  function a(a, b) {
    b = b || Object.create(null);
    var c = document.createEvent("Event");
    c.initEvent(a, b.bubbles || !1, b.cancelable || !1);
    for (var d, e = 2; e < m.length; e++) d = m[e], c[d] = b[d] || n[e];
    c.buttons = b.buttons || 0;
    var f = 0;
    return f = b.pressure && c.buttons ? b.pressure : c.buttons ? .5 : 0, c.x = c.clientX, c.y = c.clientY, c.pointerId = b.pointerId || 0, c.width = b.width || 0, c.height = b.height || 0, c.pressure = f, c.tiltX = b.tiltX || 0, c.tiltY = b.tiltY || 0, c.twist = b.twist || 0, c.tangentialPressure = b.tangentialPressure || 0, c.pointerType = b.pointerType || "", c.hwTimestamp = b.hwTimestamp || 0, c.isPrimary = b.isPrimary || !1, c
  }

  function b() {
    this.array = [], this.size = 0
  }

  function c(a, b, c, d) {
    this.addCallback = a.bind(d), this.removeCallback = b.bind(d), this.changedCallback = c.bind(d), A && (this.observer = new A(this.mutationWatcher.bind(this)))
  }

  function d(a) {
    return "body /shadow-deep/ " + e(a)
  }

  function e(a) {
    return '[touch-action="' + a + '"]'
  }

  function f(a) {
    return "{ -ms-touch-action: " + a + "; touch-action: " + a + "; }"
  }

  function g() {
    if (F) {
      D.forEach(function (a) {
        String(a) === a ? (E += e(a) + f(a) + "\n", G && (E += d(a) + f(a) + "\n")) : (E += a.selectors.map(e) + f(a.rule) + "\n", G && (E += a.selectors.map(d) + f(a.rule) + "\n"))
      });
      var a = document.createElement("style");
      a.textContent = E, document.head.appendChild(a)
    }
  }

  function h() {
    if (!window.PointerEvent) {
      if (window.PointerEvent = a, window.navigator.msPointerEnabled) {
        var b = window.navigator.msMaxTouchPoints;
        Object.defineProperty(window.navigator, "maxTouchPoints", {
          value: b,
          enumerable: !0
        }), u.registerSource("ms", _)
      } else Object.defineProperty(window.navigator, "maxTouchPoints", {
        value: 0,
        enumerable: !0
      }), u.registerSource("mouse", N), void 0 !== window.ontouchstart && u.registerSource("touch", V);
      u.register(document)
    }
  }

  function i(a) {
    if (!u.pointermap.has(a)) {
      var b = new Error("InvalidPointerId");
      throw b.name = "InvalidPointerId", b
    }
  }

  function j(a) {
    for (var b = a.parentNode; b && b !== a.ownerDocument;) b = b.parentNode;
    if (!b) {
      var c = new Error("InvalidStateError");
      throw c.name = "InvalidStateError", c
    }
  }

  function k(a) {
    var b = u.pointermap.get(a);
    return 0 !== b.buttons
  }

  function l() {
    window.Element && !Element.prototype.setPointerCapture && Object.defineProperties(Element.prototype, {
      setPointerCapture: {
        value: W
      },
      releasePointerCapture: {
        value: X
      },
      hasPointerCapture: {
        value: Y
      }
    })
  }
  var m = ["bubbles", "cancelable", "view", "detail", "screenX", "screenY", "clientX", "clientY", "ctrlKey", "altKey", "shiftKey", "metaKey", "button", "relatedTarget", "pageX", "pageY"],
    n = [!1, !1, null, null, 0, 0, 0, 0, !1, !1, !1, !1, 0, null, 0, 0],
    o = window.Map && window.Map.prototype.forEach,
    p = o ? Map : b;
  b.prototype = {
    set: function (a, b) {
      return void 0 === b ? this["delete"](a) : (this.has(a) || this.size++, void(this.array[a] = b))
    },
    has: function (a) {
      return void 0 !== this.array[a]
    },
    "delete": function (a) {
      this.has(a) && (delete this.array[a], this.size--)
    },
    get: function (a) {
      return this.array[a]
    },
    clear: function () {
      this.array.length = 0, this.size = 0
    },
    forEach: function (a, b) {
      return this.array.forEach(function (c, d) {
        a.call(b, c, d, this)
      }, this)
    }
  };
  var q = ["bubbles", "cancelable", "view", "detail", "screenX", "screenY", "clientX", "clientY", "ctrlKey", "altKey", "shiftKey", "metaKey", "button", "relatedTarget", "buttons", "pointerId", "width", "height", "pressure", "tiltX", "tiltY", "pointerType", "hwTimestamp", "isPrimary", "type", "target", "currentTarget", "which", "pageX", "pageY", "timeStamp"],
    r = [!1, !1, null, null, 0, 0, 0, 0, !1, !1, !1, !1, 0, null, 0, 0, 0, 0, 0, 0, 0, "", 0, !1, "", null, null, 0, 0, 0, 0],
    s = {
      pointerover: 1,
      pointerout: 1,
      pointerenter: 1,
      pointerleave: 1
    },
    t = "undefined" != typeof SVGElementInstance,
    u = {
      pointermap: new p,
      eventMap: Object.create(null),
      captureInfo: Object.create(null),
      eventSources: Object.create(null),
      eventSourceList: [],
      registerSource: function (a, b) {
        var c = b,
          d = c.events;
        d && (d.forEach(function (a) {
          c[a] && (this.eventMap[a] = c[a].bind(c))
        }, this), this.eventSources[a] = c, this.eventSourceList.push(c))
      },
      register: function (a) {
        for (var b, c = this.eventSourceList.length, d = 0; d < c && (b = this.eventSourceList[d]); d++)
          b.register.call(b, a)
      },
      unregister: function (a) {
        for (var b, c = this.eventSourceList.length, d = 0; d < c && (b = this.eventSourceList[d]); d++)
          b.unregister.call(b, a)
      },
      contains: function (a, b) {
        try {
          return a.contains(b)
        } catch (c) {
          return !1
        }
      },
      down: function (a) {
        a.bubbles = !0, this.fireEvent("pointerdown", a)
      },
      move: function (a) {
        a.bubbles = !0, this.fireEvent("pointermove", a)
      },
      up: function (a) {
        a.bubbles = !0, this.fireEvent("pointerup", a)
      },
      enter: function (a) {
        a.bubbles = !1, this.fireEvent("pointerenter", a)
      },
      leave: function (a) {
        a.bubbles = !1, this.fireEvent("pointerleave", a)
      },
      over: function (a) {
        a.bubbles = !0, this.fireEvent("pointerover", a)
      },
      out: function (a) {
        a.bubbles = !0, this.fireEvent("pointerout", a)
      },
      cancel: function (a) {
        a.bubbles = !0, this.fireEvent("pointercancel", a)
      },
      leaveOut: function (a) {
        this.out(a), this.propagate(a, this.leave, !1)
      },
      enterOver: function (a) {
        this.over(a), this.propagate(a, this.enter, !0)
      },
      eventHandler: function (a) {
        if (!a._handledByPE) {
          var b = a.type,
            c = this.eventMap && this.eventMap[b];
          c && c(a), a._handledByPE = !0
        }
      },
      listen: function (a, b) {
        b.forEach(function (b) {
          this.addEvent(a, b)
        }, this)
      },
      unlisten: function (a, b) {
        b.forEach(function (b) {
          this.removeEvent(a, b)
        }, this)
      },
      addEvent: function (a, b) {
        a.addEventListener(b, this.boundHandler)
      },
      removeEvent: function (a, b) {
        a.removeEventListener(b, this.boundHandler)
      },
      makeEvent: function (b, c) {
        this.captureInfo[c.pointerId] && (c.relatedTarget = null);
        var d = new a(b, c);
        return c.preventDefault && (d.preventDefault = c.preventDefault), d._target = d._target || c.target, d
      },
      fireEvent: function (a, b) {
        var c = this.makeEvent(a, b);
        return this.dispatchEvent(c)
      },
      cloneEvent: function (a) {
        for (var b, c = Object.create(null), d = 0; d < q.length; d++) b = q[d], c[b] = a[b] || r[d], !t || "target" !== b && "relatedTarget" !== b || c[b] instanceof SVGElementInstance && (c[b] = c[b].correspondingUseElement);
        return a.preventDefault && (c.preventDefault = function () {
          a.preventDefault()
        }), c
      },
      getTarget: function (a) {
        var b = this.captureInfo[a.pointerId];
        return b ? a._target !== b && a.type in s ? void 0 : b : a._target
      },
      propagate: function (a, b, c) {
        for (var d = a.target, e = []; d !== document && !d.contains(a.relatedTarget);)
          if (e.push(d), d = d.parentNode, !d) return;
        c && e.reverse(), e.forEach(function (c) {
          a.target = c, b.call(this, a)
        }, this)
      },
      setCapture: function (b, c, d) {
        this.captureInfo[b] && this.releaseCapture(b, d), this.captureInfo[b] = c, this.implicitRelease = this.releaseCapture.bind(this, b, d), document.addEventListener("pointerup", this.implicitRelease), document.addEventListener("pointercancel", this.implicitRelease);
        var e = new a("gotpointercapture");
        e.pointerId = b, e._target = c, d || this.asyncDispatchEvent(e)
      },
      releaseCapture: function (b, c) {
        var d = this.captureInfo[b];
        if (d) {
          this.captureInfo[b] = void 0, document.removeEventListener("pointerup", this.implicitRelease), document.removeEventListener("pointercancel", this.implicitRelease);
          var e = new a("lostpointercapture");
          e.pointerId = b, e._target = d, c || this.asyncDispatchEvent(e)
        }
      },
      dispatchEvent: /*scope.external.dispatchEvent || */ function (a) {
        var b = this.getTarget(a);
        if (b) return b.dispatchEvent(a)
      },
      asyncDispatchEvent: function (a) {
        requestAnimationFrame(this.dispatchEvent.bind(this, a))
      }
    };
  u.boundHandler = u.eventHandler.bind(u);
  var v = {
      shadow: function (a) {
        if (a) return a.shadowRoot || a.webkitShadowRoot
      },
      canTarget: function (a) {
        return a && Boolean(a.elementFromPoint)
      },
      targetingShadow: function (a) {
        var b = this.shadow(a);
        if (this.canTarget(b)) return b
      },
      olderShadow: function (a) {
        var b = a.olderShadowRoot;
        if (!b) {
          var c = a.querySelector("shadow");
          c && (b = c.olderShadowRoot)
        }
        return b
      },
      allShadows: function (a) {
        for (var b = [], c = this.shadow(a); c;) b.push(c), c = this.olderShadow(c);
        return b
      },
      searchRoot: function (a, b, c) {
        if (a) {
          var d, e, f = a.elementFromPoint(b, c);
          for (e = this.targetingShadow(f); e;) {
            if (d = e.elementFromPoint(b, c)) {
              var g = this.targetingShadow(d);
              return this.searchRoot(g, b, c) || d
            }
            e = this.olderShadow(e)
          }
          return f
        }
      },
      owner: function (a) {
        for (var b = a; b.parentNode;) b = b.parentNode;
        return b.nodeType !== Node.DOCUMENT_NODE && b.nodeType !== Node.DOCUMENT_FRAGMENT_NODE && (b = document), b
      },
      findTarget: function (a) {
        var b = a.clientX,
          c = a.clientY,
          d = this.owner(a.target);
        return d.elementFromPoint(b, c) || (d = document), this.searchRoot(d, b, c)
      }
    },
    w = Array.prototype.forEach.call.bind(Array.prototype.forEach),
    x = Array.prototype.map.call.bind(Array.prototype.map),
    y = Array.prototype.slice.call.bind(Array.prototype.slice),
    z = Array.prototype.filter.call.bind(Array.prototype.filter),
    A = window.MutationObserver || window.WebKitMutationObserver,
    B = "[touch-action]",
    C = {
      subtree: !0,
      childList: !0,
      attributes: !0,
      attributeOldValue: !0,
      attributeFilter: ["touch-action"]
    };
  c.prototype = {
    watchSubtree: function (a) {
      //
      this.observer && v.canTarget(a) && this.observer.observe(a, C)
    },
    enableOnSubtree: function (a) {
      this.watchSubtree(a), a === document && "complete" !== document.readyState ? this.installOnLoad() : this.installNewSubtree(a)
    },
    installNewSubtree: function (a) {
      w(this.findElements(a), this.addElement, this)
    },
    findElements: function (a) {
      return a.querySelectorAll ? a.querySelectorAll(B) : []
    },
    removeElement: function (a) {
      this.removeCallback(a)
    },
    addElement: function (a) {
      this.addCallback(a)
    },
    elementChanged: function (a, b) {
      this.changedCallback(a, b)
    },
    concatLists: function (a, b) {
      return a.concat(y(b))
    },
    installOnLoad: function () {
      document.addEventListener("readystatechange", function () {
        "complete" === document.readyState && this.installNewSubtree(document)
      }.bind(this))
    },
    isElement: function (a) {
      return a.nodeType === Node.ELEMENT_NODE
    },
    flattenMutationTree: function (a) {
      var b = x(a, this.findElements, this);
      return b.push(z(a, this.isElement)), b.reduce(this.concatLists, [])
    },
    mutationWatcher: function (a) {
      a.forEach(this.mutationHandler, this)
    },
    mutationHandler: function (a) {
      if ("childList" === a.type) {
        var b = this.flattenMutationTree(a.addedNodes);
        b.forEach(this.addElement, this);
        var c = this.flattenMutationTree(a.removedNodes);
        c.forEach(this.removeElement, this)
      } else "attributes" === a.type && this.elementChanged(a.target, a.oldValue)
    }
  };
  var D = ["none", "auto", "pan-x", "pan-y", {
      rule: "pan-x pan-y",
      selectors: ["pan-x pan-y", "pan-y pan-x"]
    }],
    E = "",
    F = window.PointerEvent || window.MSPointerEvent,
    G = !window.ShadowDOMPolyfill && document.head.createShadowRoot,
    H = u.pointermap,
    I = 25,
    J = [1, 4, 2, 8, 16],
    K = !1;
  try {
    K = 1 === new MouseEvent("test", {
      buttons: 1
    }).buttons
  } catch (L) {}
  var M, N = {
      POINTER_ID: 1,
      POINTER_TYPE: "mouse",
      events: ["mousedown", "mousemove", "mouseup", "mouseover", "mouseout"],
      register: function (a) {
        u.listen(a, this.events)
      },
      unregister: function (a) {
        u.unlisten(a, this.events)
      },
      lastTouches: [],
      isEventSimulatedFromTouch: function (a) {
        for (var b, c = this.lastTouches, d = a.clientX, e = a.clientY, f = 0, g = c.length; f < g && (b = c[f]); f++) {
          var h = Math.abs(d - b.x),
            i = Math.abs(e - b.y);
          if (h <= I && i <= I) return !0
        }
      },
      prepareEvent: function (a) {
        var b = u.cloneEvent(a),
          c = b.preventDefault;
        return b.preventDefault = function () {
          a.preventDefault(), c()
        }, b.pointerId = this.POINTER_ID, b.isPrimary = !0, b.pointerType = this.POINTER_TYPE, b
      },
      prepareButtonsForMove: function (a, b) {
        var c = H.get(this.POINTER_ID);
        0 !== b.which && c ? a.buttons = c.buttons : a.buttons = 0, b.buttons = a.buttons
      },
      mousedown: function (a) {
        if (!this.isEventSimulatedFromTouch(a)) {
          var b = H.get(this.POINTER_ID),
            c = this.prepareEvent(a);
          K || (c.buttons = J[c.button], b && (c.buttons |= b.buttons), a.buttons = c.buttons), H.set(this.POINTER_ID, a), b && 0 !== b.buttons ? u.move(c) : u.down(c)
        }
      },
      mousemove: function (a) {
        if (!this.isEventSimulatedFromTouch(a)) {
          var b = this.prepareEvent(a);
          K || this.prepareButtonsForMove(b, a), b.button = -1, H.set(this.POINTER_ID, a), u.move(b)
        }
      },
      mouseup: function (a) {
        if (!this.isEventSimulatedFromTouch(a)) {
          var b = H.get(this.POINTER_ID),
            c = this.prepareEvent(a);
          if (!K) {
            var d = J[c.button];
            c.buttons = b ? b.buttons & ~d : 0, a.buttons = c.buttons
          }
          H.set(this.POINTER_ID, a),
            c.buttons &= ~J[c.button], 0 === c.buttons ? u.up(c) : u.move(c)
        }
      },
      mouseover: function (a) {
        if (!this.isEventSimulatedFromTouch(a)) {
          var b = this.prepareEvent(a);
          K || this.prepareButtonsForMove(b, a), b.button = -1, H.set(this.POINTER_ID, a), u.enterOver(b)
        }
      },
      mouseout: function (a) {
        if (!this.isEventSimulatedFromTouch(a)) {
          var b = this.prepareEvent(a);
          K || this.prepareButtonsForMove(b, a), b.button = -1, u.leaveOut(b)
        }
      },
      cancel: function (a) {
        var b = this.prepareEvent(a);
        u.cancel(b), this.deactivateMouse()
      },
      deactivateMouse: function () {
        H["delete"](this.POINTER_ID)
      }
    },
    O = u.captureInfo,
    P = v.findTarget.bind(v),
    Q = v.allShadows.bind(v),
    R = u.pointermap,
    S = 2500,
    T = 200,
    U = "touch-action",
    V = {
      events: ["touchstart", "touchmove", "touchend", "touchcancel"],
      register: function (a) {
        M.enableOnSubtree(a)
      },
      unregister: function () {},
      elementAdded: function (a) {
        var b = a.getAttribute(U),
          c = this.touchActionToScrollType(b);
        c && (a._scrollType = c, u.listen(a, this.events),
          Q(a).forEach(function (a) {
            a._scrollType = c, u.listen(a, this.events)
          }, this))
      },
      elementRemoved: function (a) {
        a._scrollType = void 0, u.unlisten(a, this.events),
          Q(a).forEach(function (a) {
            a._scrollType = void 0, u.unlisten(a, this.events)
          }, this)
      },
      elementChanged: function (a, b) {
        var c = a.getAttribute(U),
          d = this.touchActionToScrollType(c),
          e = this.touchActionToScrollType(b);
        d && e ? (a._scrollType = d, Q(a).forEach(function (a) {
          a._scrollType = d
        }, this)) : e ? this.elementRemoved(a) : d && this.elementAdded(a)
      },
      scrollTypes: {
        EMITTER: "none",
        XSCROLLER: "pan-x",
        YSCROLLER: "pan-y",
        SCROLLER: /^(?:pan-x pan-y)|(?:pan-y pan-x)|auto$/
      },
      touchActionToScrollType: function (a) {
        var b = a,
          c = this.scrollTypes;
        return "none" === b ? "none" : b === c.XSCROLLER ? "X" : b === c.YSCROLLER ? "Y" : c.SCROLLER.exec(b) ? "XY" : void 0
      },
      POINTER_TYPE: "touch",
      firstTouch: null,
      isPrimaryTouch: function (a) {
        return this.firstTouch === a.identifier
      },
      setPrimaryTouch: function (a) {
        (0 === R.size || 1 === R.size && R.has(1)) && (this.firstTouch = a.identifier, this.firstXY = {
          X: a.clientX,
          Y: a.clientY
        }, this.scrolling = !1, this.cancelResetClickCount())
      },
      removePrimaryPointer: function (a) {
        a.isPrimary && (this.firstTouch = null, this.firstXY = null, this.resetClickCount())
      },
      clickCount: 0,
      resetId: null,
      resetClickCount: function () {
        var a = function () {
          this.clickCount = 0, this.resetId = null
        }.bind(this);
        this.resetId = setTimeout(a, T)
      },
      cancelResetClickCount: function () {
        this.resetId && clearTimeout(this.resetId)
      },
      typeToButtons: function (a) {
        var b = 0;
        return "touchstart" !== a && "touchmove" !== a || (b = 1), b
      },
      touchToPointer: function (a) {
        var b = this.currentTouchEvent,
          c = u.cloneEvent(a),
          d = c.pointerId = a.identifier + 2;
        c.target = O[d] || P(c), c.bubbles = !0, c.cancelable = !0, c.detail = this.clickCount, c.button = 0, c.buttons = this.typeToButtons(b.type), c.width = 2 * (a.radiusX || a.webkitRadiusX || 0), c.height = 2 * (a.radiusY || a.webkitRadiusY || 0), c.pressure = a.force || a.webkitForce || .5, c.isPrimary = this.isPrimaryTouch(a), c.pointerType = this.POINTER_TYPE,
          c.altKey = b.altKey, c.ctrlKey = b.ctrlKey, c.metaKey = b.metaKey, c.shiftKey = b.shiftKey;
        var e = this;
        return c.preventDefault = function () {
          e.scrolling = !1, e.firstXY = null, b.preventDefault()
        }, c
      },
      processTouches: function (a, b) {
        var c = a.changedTouches;
        this.currentTouchEvent = a;
        for (var d, e = 0; e < c.length; e++) d = c[e], b.call(this, this.touchToPointer(d))
      },
      shouldScroll: function (a) {
        if (this.firstXY) {
          var b, c = a.currentTarget._scrollType;
          if ("none" === c)
            b = !1;
          else if ("XY" === c)
            b = !0;
          else {
            var d = a.changedTouches[0],
              e = c,
              f = "Y" === c ? "X" : "Y",
              g = Math.abs(d["client" + e] - this.firstXY[e]),
              h = Math.abs(d["client" + f] - this.firstXY[f]);
            b = g >= h
          }
          return this.firstXY = null, b
        }
      },
      findTouch: function (a, b) {
        for (var c, d = 0, e = a.length; d < e && (c = a[d]); d++)
          if (c.identifier === b) return !0
      },
      vacuumTouches: function (a) {
        var b = a.touches;
        if (R.size >= b.length) {
          var c = [];
          R.forEach(function (a, d) {
            if (1 !== d && !this.findTouch(b, d - 2)) {
              var e = a.out;
              c.push(e)
            }
          }, this), c.forEach(this.cancelOut, this)
        }
      },
      touchstart: function (a) {
        this.vacuumTouches(a), this.setPrimaryTouch(a.changedTouches[0]), this.dedupSynthMouse(a), this.scrolling || (this.clickCount++, this.processTouches(a, this.overDown))
      },
      overDown: function (a) {
        R.set(a.pointerId, {
          target: a.target,
          out: a,
          outTarget: a.target
        }), u.enterOver(a), u.down(a)
      },
      touchmove: function (a) {
        this.scrolling || (this.shouldScroll(a) ? (this.scrolling = !0, this.touchcancel(a)) : (a.preventDefault(), this.processTouches(a, this.moveOverOut)))
      },
      moveOverOut: function (a) {
        var b = a,
          c = R.get(b.pointerId);
        if (c) {
          var d = c.out,
            e = c.outTarget;
          u.move(b), d && e !== b.target && (d.relatedTarget = b.target, b.relatedTarget = e,
            d.target = e, b.target ? (u.leaveOut(d), u.enterOver(b)) : (
              b.target = e, b.relatedTarget = null, this.cancelOut(b))), c.out = b, c.outTarget = b.target
        }
      },
      touchend: function (a) {
        this.dedupSynthMouse(a), this.processTouches(a, this.upOut)
      },
      upOut: function (a) {
        this.scrolling || (u.up(a), u.leaveOut(a)), this.cleanUpPointer(a)
      },
      touchcancel: function (a) {
        this.processTouches(a, this.cancelOut)
      },
      cancelOut: function (a) {
        u.cancel(a), u.leaveOut(a), this.cleanUpPointer(a)
      },
      cleanUpPointer: function (a) {
        R["delete"](a.pointerId), this.removePrimaryPointer(a)
      },
      dedupSynthMouse: function (a) {
        var b = N.lastTouches,
          c = a.changedTouches[0];
        if (this.isPrimaryTouch(c)) {
          var d = {
            x: c.clientX,
            y: c.clientY
          };
          b.push(d);
          var e = function (a, b) {
            var c = a.indexOf(b);
            c > -1 && a.splice(c, 1)
          }.bind(null, b, d);
          setTimeout(e, S)
        }
      }
    };
  M = new c(V.elementAdded, V.elementRemoved, V.elementChanged, V);
  var W, X, Y, Z = u.pointermap,
    $ = window.MSPointerEvent && "number" == typeof window.MSPointerEvent.MSPOINTER_TYPE_MOUSE,
    _ = {
      events: ["MSPointerDown", "MSPointerMove", "MSPointerUp", "MSPointerOut", "MSPointerOver", "MSPointerCancel", "MSGotPointerCapture", "MSLostPointerCapture"],
      register: function (a) {
        u.listen(a, this.events)
      },
      unregister: function (a) {
        u.unlisten(a, this.events)
      },
      POINTER_TYPES: ["", "unavailable", "touch", "pen", "mouse"],
      prepareEvent: function (a) {
        var b = a;
        return $ && (b = u.cloneEvent(a), b.pointerType = this.POINTER_TYPES[a.pointerType]), b
      },
      cleanup: function (a) {
        Z["delete"](a)
      },
      MSPointerDown: function (a) {
        Z.set(a.pointerId, a);
        var b = this.prepareEvent(a);
        u.down(b)
      },
      MSPointerMove: function (a) {
        var b = this.prepareEvent(a);
        u.move(b)
      },
      MSPointerUp: function (a) {
        var b = this.prepareEvent(a);
        u.up(b), this.cleanup(a.pointerId)
      },
      MSPointerOut: function (a) {
        var b = this.prepareEvent(a);
        u.leaveOut(b)
      },
      MSPointerOver: function (a) {
        var b = this.prepareEvent(a);
        u.enterOver(b)
      },
      MSPointerCancel: function (a) {
        var b = this.prepareEvent(a);
        u.cancel(b), this.cleanup(a.pointerId)
      },
      MSLostPointerCapture: function (a) {
        var b = u.makeEvent("lostpointercapture", a);
        u.dispatchEvent(b)
      },
      MSGotPointerCapture: function (a) {
        var b = u.makeEvent("gotpointercapture", a);
        u.dispatchEvent(b)
      }
    },
    aa = window.navigator;
  aa.msPointerEnabled ? (W = function (a) {
    i(a), j(this), k(a) && (u.setCapture(a, this, !0), this.msSetPointerCapture(a))
  }, X = function (a) {
    i(a), u.releaseCapture(a, !0), this.msReleasePointerCapture(a)
  }) : (W = function (a) {
    i(a), j(this), k(a) && u.setCapture(a, this)
  }, X = function (a) {
    i(a), u.releaseCapture(a)
  }), Y = function (a) {
    return !!u.captureInfo[a]
  }, g(), h(), l();
  var ba = {
    dispatcher: u,
    Installer: c,
    PointerEvent: a,
    PointerMap: p,
    targetFinding: v
  };
  return ba
});
///////////////////////////////////////////////

///////////////////////////////////////////////
var config = {"show_fabrication":false,"redraw_on_drag":true,"highlight_pin1":false,"extra_fields":[],"dark_mode":false,"bom_view":"left-right","board_rotation":0,"checkboxes":"Sourced,Placed","show_silkscreen":true,"show_pads":true,"layer_view":"FB"};
///////////////////////////////////////////////

///////////////////////////////////////////////
var pcbdata = {"ibom_version":"v2.3-50-g53ae\n","edges_bbox":{"minx":295,"miny":-484.2,"maxx":501.9,"maxy":-295},"edges":[],"drawings":{"silkscreen":{"F":[{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M446.9797,-361.1547 446.9797,-356.0959 454.2009,-356.0959 454.2009,-361.1547"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M446.9797,-364.1169 446.9797,-369.1757 454.2009,-369.1757 454.2009,-364.1169"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M454.2009,-350.3374 454.2009,-355.3962 446.9797,-355.3962 446.9797,-350.3374"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M454.2009,-347.3752 454.2009,-342.3164 446.9797,-342.3164 446.9797,-347.3752"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M429.2273,-345.5771 424.1685,-345.5771 424.1685,-338.3559 429.2273,-338.3559"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M432.1895,-345.5771 437.2483,-345.5771 437.2483,-338.3559 432.1895,-338.3559"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M377.7416,-351.8532 377.7416,-346.3019"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M384.8566,-346.3019 384.8566,-351.8532"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M384.2566,-352.4531 378.3416,-352.4531"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M377.7416,-337.5917 377.7416,-343.1429"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M384.8566,-343.1429 384.8566,-337.5917"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M384.2566,-336.9918 378.3416,-336.9918"},{"type":"arc","width":0.6,"svgpath":"M 384.85655 -351.85315 A 0.6 0.6 0 0 0 384.25655 -352.45315","net":""},{"type":"arc","width":0.6,"svgpath":"M 378.34155 -352.45315 A 0.6 0.6 0 0 0 377.74155 -351.85315","net":""},{"type":"arc","width":0.6,"svgpath":"M 384.25655 -336.99175 A 0.6 0.6 0 0 0 384.85655 -337.59175","net":""},{"type":"arc","width":0.6,"svgpath":"M 377.74155 -337.59175 A 0.6 0.6 0 0 0 378.34155 -336.99175","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M415.925,-333.9784 415.925,-335.4784 413.115,-335.4784"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M415.925,-318.0384 415.925,-323.5784"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M380.925,-306.4484 380.925,-303.9784 415.925,-303.9784 415.925,-306.4484"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M380.925,-323.5784 380.925,-318.0384"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M383.735,-335.4784 380.925,-335.4784 380.925,-333.9784"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M423.7384,-366.6734 437.6784,-366.6734 437.6784,-346.3934 423.7384,-346.3934 423.7384,-366.6734"},{"type":"arc","width":1.18,"svgpath":"M 426.2984 -364.53345 A 0.59 0.59 0 0 0 426.2984 -364.53345","net":""},{"type":"arc","width":1.18,"svgpath":"M 420.0184 -367.94345 A 0.59 0.59 0 0 0 420.0184 -367.94345","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M443.4683,-377.7939 436.3883,-377.7939"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M443.4683,-389.9939 436.3883,-389.9939"},{"type":"arc","width":1,"svgpath":"M 434.92833 -390.39387 A 0.5 0.5 0 0 0 434.92833 -390.39387","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M423.4877,-383.8002 423.4877,-388.859 416.2665,-388.859 416.2665,-383.8002"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M423.4877,-380.838 423.4877,-375.7792 416.2665,-375.7792 416.2665,-380.838"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M433.4202,-391.1648 438.9714,-391.1648"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M438.9714,-398.2798 433.4202,-398.2798"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M432.8202,-397.6798 432.8202,-391.7649"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M447.6816,-391.1648 442.1304,-391.1648"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M442.1304,-398.2798 447.6816,-398.2798"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M448.2816,-397.6798 448.2816,-391.7649"},{"type":"arc","width":0.6,"svgpath":"M 433.4202 -398.27985 A 0.6 0.6 0 0 0 432.8202 -397.67985","net":""},{"type":"arc","width":0.6,"svgpath":"M 432.8202 -391.76485 A 0.6 0.6 0 0 0 433.4202 -391.16485","net":""},{"type":"arc","width":0.6,"svgpath":"M 448.2816 -397.67985 A 0.6 0.6 0 0 0 447.6816 -398.27985","net":""},{"type":"arc","width":0.6,"svgpath":"M 447.6816 -391.16485 A 0.6 0.6 0 0 0 448.2816 -391.76485","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M431.1279,-396.7033 425.5767,-396.7033"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M425.5767,-389.5883 431.1279,-389.5883"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M431.7279,-390.1883 431.7279,-396.1033"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M416.8665,-396.7033 422.4177,-396.7033"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M422.4177,-389.5883 416.8665,-389.5883"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M416.2665,-390.1883 416.2665,-396.1033"},{"type":"arc","width":0.6,"svgpath":"M 431.12793 -389.58832 A 0.6 0.6 0 0 0 431.72793 -390.18832","net":""},{"type":"arc","width":0.6,"svgpath":"M 431.72793 -396.10332 A 0.6 0.6 0 0 0 431.12793 -396.70332","net":""},{"type":"arc","width":0.6,"svgpath":"M 416.26653 -390.18832 A 0.6 0.6 0 0 0 416.86653 -389.58832","net":""},{"type":"arc","width":0.6,"svgpath":"M 416.86653 -396.70332 A 0.6 0.6 0 0 0 416.26653 -396.10332","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M440.622,-369.4565 445.6808,-369.4565 445.6808,-376.6777 440.622,-376.6777"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M437.6598,-369.4565 432.601,-369.4565 432.601,-376.6777 437.6598,-376.6777"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M431.7279,-383.8002 431.7279,-388.859 424.5067,-388.859 424.5067,-383.8002"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M431.7279,-380.838 431.7279,-375.7792 424.5067,-375.7792 424.5067,-380.838"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M439.7709,-399.5806 441.3309,-399.5806"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M441.3309,-407.5806 439.7709,-407.5806"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M441.1071,-411.5473 451.5495,-411.5473 451.5495,-416.0702"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M441.1071,-429.8637 451.5495,-429.8637 451.5495,-425.3408"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M349.8754,-313.92 340.6754,-313.92"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M354.7254,-313.92 354.7254,-309.51"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M340.2754,-305.06 350.2754,-305.06"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M349.2154,-305.06 349.2154,-300.14 341.3354,-300.14 341.3354,-305.06"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M336.4954,-313.92 335.8254,-313.92 335.8254,-309.51"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M354.2854,-313.92 354.0554,-313.92"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M456.1745,-313.92 446.9745,-313.92"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M461.0245,-313.92 461.0245,-309.51"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M446.5745,-305.06 456.5745,-305.06"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M455.5145,-305.06 455.5145,-300.14 447.6345,-300.14 447.6345,-305.06"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M442.7945,-313.92 442.1245,-313.92 442.1245,-309.51"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M460.5845,-313.92 460.3545,-313.92"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M407.425,-418.101 407.425,-418.4585 389.425,-418.4585 389.425,-418.101"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M407.425,-391.8159 407.425,-391.4585 389.425,-391.4585 389.425,-391.8159"},{"type":"arc","width":1.1811,"svgpath":"M 388.516 -418.95855 A 0.591 0.591 0 0 0 388.516 -418.95855","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M396.4864,-388.2936 391.4276,-388.2936 391.4276,-381.0724 396.4864,-381.0724"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M399.4486,-388.2936 404.5073,-388.2936 404.5073,-381.0724 399.4486,-381.0724"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M389.4372,-383.2348 389.4372,-388.2936 382.216,-388.2936 382.216,-383.2348"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M389.4372,-380.2726 389.4372,-375.2138 382.216,-375.2138 382.216,-380.2726"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M399.9139,-361.9332 398.6539,-361.9332 398.6539,-348.9432 399.8139,-348.9432"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M410.3939,-361.9332 411.6539,-361.9332 411.6539,-348.9432 410.4939,-348.9432"},{"type":"arc","width":0.79,"svgpath":"M 411.52393 -363.3432 A 0.39 0.39 0 0 0 411.52393 -363.3432","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M386.2496,-361.9128 384.9896,-361.9128 384.9896,-348.9228 386.1496,-348.9228"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M396.7296,-361.9128 397.9896,-361.9128 397.9896,-348.9228 396.8296,-348.9228"},{"type":"arc","width":0.79,"svgpath":"M 397.8596 -363.32277 A 0.39 0.39 0 0 0 397.8596 -363.32277","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M487.0117,-397.49 460.2317,-397.49 460.2317,-408.49 487.0117,-408.49 487.0117,-397.49"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M351.4728,-331.6439 350.2128,-331.6439 350.2128,-318.6539 351.3728,-318.6539"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M361.9528,-331.6439 363.2128,-331.6439 363.2128,-318.6539 362.0528,-318.6539"},{"type":"arc","width":0.79,"svgpath":"M 363.0828 -333.05395 A 0.39 0.39 0 0 0 363.0828 -333.05395","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M334.5859,-339.6239 334.5859,-344.6827 327.3647,-344.6827 327.3647,-339.6239"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M334.5859,-336.6617 334.5859,-331.6029 327.3647,-331.6029 327.3647,-336.6617"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M450.0638,-333.1618 445.005,-333.1618 445.005,-325.9406 450.0638,-325.9406"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M453.026,-333.1618 458.0848,-333.1618 458.0848,-325.9406 453.026,-325.9406"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M326.3457,-339.6239 326.3457,-344.6827 319.1245,-344.6827 319.1245,-339.6239"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M326.3457,-336.6617 326.3457,-331.6029 319.1245,-331.6029 319.1245,-336.6617"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M333.9859,-352.7239 328.4347,-352.7239"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M328.4347,-345.6089 333.9859,-345.6089"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M334.5859,-346.2089 334.5859,-352.1239"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M319.7245,-352.7239 325.2757,-352.7239"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M325.2757,-345.6089 319.7245,-345.6089"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M319.1245,-346.2089 319.1245,-352.1239"},{"type":"arc","width":0.6,"svgpath":"M 333.9859 -345.6089 A 0.6 0.6 0 0 0 334.5859 -346.2089","net":""},{"type":"arc","width":0.6,"svgpath":"M 334.5859 -352.1239 A 0.6 0.6 0 0 0 333.9859 -352.7239","net":""},{"type":"arc","width":0.6,"svgpath":"M 319.1245 -346.2089 A 0.6 0.6 0 0 0 319.7245 -345.6089","net":""},{"type":"arc","width":0.6,"svgpath":"M 319.7245 -352.7239 A 0.6 0.6 0 0 0 319.1245 -352.1239","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M450.0638,-324.9216 445.005,-324.9216 445.005,-317.7004 450.0638,-317.7004"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M453.026,-324.9216 458.0848,-324.9216 458.0848,-317.7004 453.026,-317.7004"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M436.9638,-332.5618 436.9638,-327.0106"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M444.0788,-327.0106 444.0788,-332.5618"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M443.4788,-333.1618 437.5638,-333.1618"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M436.9638,-318.3004 436.9638,-323.8516"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M444.0788,-323.8516 444.0788,-318.3004"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M443.4788,-317.7004 437.5638,-317.7004"},{"type":"arc","width":0.6,"svgpath":"M 444.07875 -332.56185 A 0.6 0.6 0 0 0 443.47875 -333.16185","net":""},{"type":"arc","width":0.6,"svgpath":"M 437.56375 -333.16185 A 0.6 0.6 0 0 0 436.96375 -332.56185","net":""},{"type":"arc","width":0.6,"svgpath":"M 443.47875 -317.70045 A 0.6 0.6 0 0 0 444.07875 -318.30045","net":""},{"type":"arc","width":0.6,"svgpath":"M 436.96375 -318.30045 A 0.6 0.6 0 0 0 437.56375 -317.70045","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M396.5502,-380.4196 391.4914,-380.4196 391.4914,-373.1984 396.5502,-373.1984"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M399.5124,-380.4196 404.5712,-380.4196 404.5712,-373.1984 399.5124,-373.1984"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M426.5445,-425.0705 426.5445,-430.1293 419.3233,-430.1293 419.3233,-425.0705"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M426.5445,-422.1083 426.5445,-417.0495 419.3233,-417.0495 419.3233,-422.1083"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M458.4202,-422.8577 463.9714,-422.8577"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M463.9714,-429.9727 458.4202,-429.9727"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M457.8202,-429.3727 457.8202,-423.4577"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M472.6816,-422.8577 467.1304,-422.8577"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M467.1304,-429.9727 472.6816,-429.9727"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M473.2816,-429.3727 473.2816,-423.4577"},{"type":"arc","width":0.6,"svgpath":"M 458.42015 -429.9727 A 0.6 0.6 0 0 0 457.82015 -429.3727","net":""},{"type":"arc","width":0.6,"svgpath":"M 457.82015 -423.4577 A 0.6 0.6 0 0 0 458.42015 -422.8577","net":""},{"type":"arc","width":0.6,"svgpath":"M 473.28155 -429.3727 A 0.6 0.6 0 0 0 472.68155 -429.9727","net":""},{"type":"arc","width":0.6,"svgpath":"M 472.68155 -422.8577 A 0.6 0.6 0 0 0 473.28155 -423.4577","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M427.3478,-430.79 427.3478,-425.2388"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M434.4628,-425.2388 434.4628,-430.79"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M433.8628,-431.39 427.9478,-431.39"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M427.3478,-416.5286 427.3478,-422.0798"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M434.4628,-422.0798 434.4628,-416.5286"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M433.8628,-415.9286 427.9478,-415.9286"},{"type":"arc","width":0.6,"svgpath":"M 434.46275 -430.79 A 0.6 0.6 0 0 0 433.86275 -431.39","net":""},{"type":"arc","width":0.6,"svgpath":"M 427.94775 -431.39 A 0.6 0.6 0 0 0 427.34775 -430.79","net":""},{"type":"arc","width":0.6,"svgpath":"M 433.86275 -415.9286 A 0.6 0.6 0 0 0 434.46275 -416.5286","net":""},{"type":"arc","width":0.6,"svgpath":"M 427.34775 -416.5286 A 0.6 0.6 0 0 0 427.94775 -415.9286","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M424.6129,-412.2861 424.6129,-406.7349"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M431.7279,-406.7349 431.7279,-412.2861"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M431.1279,-412.8861 425.2129,-412.8861"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M424.6129,-398.0247 424.6129,-403.5759"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M431.7279,-403.5759 431.7279,-398.0247"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M431.1279,-397.4247 425.2129,-397.4247"},{"type":"arc","width":0.6,"svgpath":"M 431.72793 -412.2861 A 0.6 0.6 0 0 0 431.12793 -412.8861","net":""},{"type":"arc","width":0.6,"svgpath":"M 425.21293 -412.8861 A 0.6 0.6 0 0 0 424.61293 -412.2861","net":""},{"type":"arc","width":0.6,"svgpath":"M 431.12793 -397.4247 A 0.6 0.6 0 0 0 431.72793 -398.0247","net":""},{"type":"arc","width":0.6,"svgpath":"M 424.61293 -398.0247 A 0.6 0.6 0 0 0 425.21293 -397.4247","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M459.2375,-395.5538 459.2375,-390.0026"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M466.3525,-390.0026 466.3525,-395.5538"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M465.7525,-396.1538 459.8375,-396.1538"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M459.2375,-381.2924 459.2375,-386.8437"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M466.3525,-386.8437 466.3525,-381.2924"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M465.7525,-380.6924 459.8375,-380.6924"},{"type":"arc","width":0.6,"svgpath":"M 466.35245 -395.55385 A 0.6 0.6 0 0 0 465.75245 -396.15385","net":""},{"type":"arc","width":0.6,"svgpath":"M 459.83745 -396.15385 A 0.6 0.6 0 0 0 459.23745 -395.55385","net":""},{"type":"arc","width":0.6,"svgpath":"M 465.75245 -380.69245 A 0.6 0.6 0 0 0 466.35245 -381.29245","net":""},{"type":"arc","width":0.6,"svgpath":"M 459.23745 -381.29245 A 0.6 0.6 0 0 0 459.83745 -380.69245","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M337.8902,-331.6439 336.6302,-331.6439 336.6302,-318.6539 337.7902,-318.6539"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M348.3702,-331.6439 349.6302,-331.6439 349.6302,-318.6539 348.4702,-318.6539"},{"type":"arc","width":0.79,"svgpath":"M 349.50015 -333.05395 A 0.39 0.39 0 0 0 349.50015 -333.05395","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M458.6593,-389.8002 458.6593,-407.9202 457.5993,-407.9202"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M447.6393,-389.8002 447.6393,-407.9202 448.6993,-407.9202"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M453.2693,-396.3802 450.2693,-399.3802 455.7693,-399.3802 456.2693,-399.3802 455.7693,-398.8802 453.2693,-396.3802"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M437.9916,-443.9318 450.5505,-443.9318 450.5505,-439.0214 437.9916,-439.0214"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M437.9916,-431.7301 465.5505,-431.7301 465.5505,-436.9222"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M437.9918,-453.4105 450.5509,-453.4105 450.5509,-448.9666 437.9918,-448.9666"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M465.5509,-456.0656 465.5509,-461.2579 437.9918,-461.2579 437.9918,-431.7301"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M465.5509,-446.223 465.5509,-446.7652"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M364.8818,-456.4577 352.3227,-456.4577 352.3227,-461.3681 364.8818,-461.3681"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M364.8818,-468.6594 337.3227,-468.6594 337.3227,-463.4673"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M337.4015,-424.6783 337.4015,-419.486 364.9606,-419.486 364.9606,-468.6988"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M364.9606,-427.3334 352.4015,-427.3334 352.4015,-431.7773 364.9606,-431.7773"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M337.4015,-434.5209 337.4015,-433.9787"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M337.4015,-444.3634 337.4015,-443.8212"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M337.4015,-454.206 337.4015,-453.6637"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M347.2461,-386.848 347.2461,-399.4069 352.1565,-399.4069 352.1565,-386.848"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M359.4478,-386.848 359.4478,-414.4069 354.2557,-414.4069"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M337.7674,-386.8482 337.7674,-399.4073 342.2113,-399.4073 342.2113,-386.8482"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M335.1123,-414.4073 329.9199,-414.4073 329.9199,-386.8482 359.4478,-386.8482"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":1,"svgpath":"M344.9549,-414.4073 344.4127,-414.4073"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M320.2614,-414.5694 320.2614,-409.0182"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M327.3764,-409.0182 327.3764,-414.5694"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M326.7764,-415.1694 320.8614,-415.1694"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M320.2614,-400.308 320.2614,-405.8592"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M327.3764,-405.8592 327.3764,-400.308"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M326.7764,-399.708 320.8614,-399.708"},{"type":"arc","width":0.6,"svgpath":"M 327.37635 -414.56945 A 0.6 0.6 0 0 0 326.77635 -415.16945","net":""},{"type":"arc","width":0.6,"svgpath":"M 320.86135 -415.16945 A 0.6 0.6 0 0 0 320.26135 -414.56945","net":""},{"type":"arc","width":0.6,"svgpath":"M 326.77635 -399.70805 A 0.6 0.6 0 0 0 327.37635 -400.30805","net":""},{"type":"arc","width":0.6,"svgpath":"M 320.26135 -400.30805 A 0.6 0.6 0 0 0 320.86135 -399.70805","net":""},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M327.6263,-394.0381 327.6263,-399.0969 320.4051,-399.0969 320.4051,-394.0381"},{"type":"polyline","net":"","start":[0,0],"end":[0,0],"width":0.6,"svgpath":"M327.6263,-391.0759 327.6263,-386.0171 320.4051,-386.0171 320.4051,-391.0759"}],"B":[]},"fabrication":{"F":[],"B":[]}},"footprints":[{"ref":"R7","center":[450.5903,-362.6358],"bbox":{"pos":[450.5903,-362.6358],"angle":270,"relpos":[-6.539899999999989,-3.6105999999999767],"size":[13.079800000000034,7.22120000000001]},"pads":[{"layers":["F"],"pos":[450.59,-359.225],"size":[4.4588,5.4213],"angle":-270,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":450.59,"y":-359.225},"polygon":[{"x":453.3007,"y":-361.4544},{"x":453.3007,"y":-356.9956},{"x":447.8794,"y":-356.9956},{"x":447.8794,"y":-361.4544}],"net":"CC1"},{"layers":["F"],"pos":[450.59,-366.046],"size":[4.4588,5.4213],"angle":-270,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":450.59,"y":-366.046},"polygon":[{"x":453.3007,"y":-368.2754},{"x":453.3007,"y":-363.8166},{"x":447.8794,"y":-363.8166},{"x":447.8794,"y":-368.2754}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"R8","center":[450.5903,-348.8563],"bbox":{"pos":[450.5903,-348.8563],"angle":90,"relpos":[-6.539899999999989,-3.6106000000000336],"size":[13.079800000000034,7.22120000000001]},"pads":[{"layers":["F"],"pos":[450.59,-352.267],"size":[4.4588,5.4213],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":450.59,"y":-352.267},"polygon":[{"x":447.8794,"y":-350.0376},{"x":447.8794,"y":-354.4964},{"x":453.3007,"y":-354.4964},{"x":453.3007,"y":-350.0376}],"net":"CC2"},{"layers":["F"],"pos":[450.59,-345.446],"size":[4.4588,5.4213],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":450.59,"y":-345.446},"polygon":[{"x":447.8794,"y":-343.2166},{"x":447.8794,"y":-347.6754},{"x":453.3007,"y":-347.6754},{"x":453.3007,"y":-343.2166}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"R9","center":[430.7084,-341.9665],"bbox":{"pos":[430.7084,-341.9665],"angle":180,"relpos":[-6.539899999999932,-3.61059999999992],"size":[13.079799999999977,7.221199999999953]},"pads":[{"layers":["F"],"pos":[427.298,-341.967],"size":[4.4588,5.4213],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":427.298,"y":-341.967},"polygon":[{"x":429.5274,"y":-339.2563},{"x":425.0686,"y":-339.2563},{"x":425.0686,"y":-344.6776},{"x":429.5274,"y":-344.6776}],"net":"VDD"},{"layers":["F"],"pos":[434.119,-341.967],"size":[4.4588,5.4213],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":434.119,"y":-341.967},"polygon":[{"x":436.3484,"y":-339.2563},{"x":431.8896,"y":-339.2563},{"x":431.8896,"y":-344.6776},{"x":436.3484,"y":-344.6776}],"net":"$1N27574"}],"drawings":[],"layer":"F"},{"ref":"C6","center":[381.2991,-344.7224],"bbox":{"pos":[381.2991,-344.7224],"angle":90,"relpos":[-7.730649999999969,-3.557550000000049],"size":[15.461400000000026,7.1150499999999965]},"pads":[{"layers":["F"],"pos":[381.299,-348.777],"size":[5.5512,5.315],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":381.299,"y":-348.777},"polygon":[{"x":378.6415,"y":-346.0014},{"x":378.6415,"y":-351.5526},{"x":383.9565,"y":-351.5526},{"x":383.9565,"y":-346.0014}],"net":"VDD"},{"layers":["F"],"pos":[381.299,-340.667],"size":[5.5512,5.315],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":381.299,"y":-340.667},"polygon":[{"x":378.6415,"y":-337.8914},{"x":378.6415,"y":-343.4426},{"x":383.9565,"y":-343.4426},{"x":383.9565,"y":-337.8914}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"USB-C-SMD_918-418K2023S40024","center":[398.425,-322.4784],"bbox":{"pos":[398.425,-322.4784],"angle":0,"relpos":[-19.370000000000005,-13.239599999999996],"size":[38.74000000000001,31.739599999999996]},"pads":[{"layers":["F"],"pos":[411.025,-332.718],"size":[2.36,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":411.025,"y":-332.718},"polygon":[{"x":409.845,"y":-335.718},{"x":412.205,"y":-335.718},{"x":412.205,"y":-329.718},{"x":409.845,"y":-329.718}],"net":"GND"},{"layers":["F"],"pos":[407.875,-332.718],"size":[2.36,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":407.875,"y":-332.718},"polygon":[{"x":406.695,"y":-335.718},{"x":409.055,"y":-335.718},{"x":409.055,"y":-329.718},{"x":406.695,"y":-329.718}],"net":"VDD"},{"layers":["F"],"pos":[405.315,-332.718],"size":[1.18,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":405.315,"y":-332.718},"polygon":[{"x":404.725,"y":-335.718},{"x":405.905,"y":-335.718},{"x":405.905,"y":-329.718},{"x":404.725,"y":-329.718}],"net":"CC2"},{"layers":["F"],"pos":[403.345,-332.718],"size":[1.18,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":403.345,"y":-332.718},"polygon":[{"x":402.755,"y":-335.718},{"x":403.935,"y":-335.718},{"x":403.935,"y":-329.718},{"x":402.755,"y":-329.718}],"net":""},{"layers":["F"],"pos":[401.375,-332.718],"size":[1.18,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":401.375,"y":-332.718},"polygon":[{"x":400.785,"y":-335.718},{"x":401.965,"y":-335.718},{"x":401.965,"y":-329.718},{"x":400.785,"y":-329.718}],"net":""},{"layers":["F"],"pos":[399.405,-332.718],"size":[1.18,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":399.405,"y":-332.718},"polygon":[{"x":398.815,"y":-335.718},{"x":399.995,"y":-335.718},{"x":399.995,"y":-329.718},{"x":398.815,"y":-329.718}],"net":""},{"layers":["F"],"pos":[397.445,-332.718],"size":[1.18,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":397.445,"y":-332.718},"polygon":[{"x":396.855,"y":-335.718},{"x":398.035,"y":-335.718},{"x":398.035,"y":-329.718},{"x":396.855,"y":-329.718}],"net":""},{"layers":["F"],"pos":[395.475,-332.718],"size":[1.18,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":395.475,"y":-332.718},"polygon":[{"x":394.885,"y":-335.718},{"x":396.065,"y":-335.718},{"x":396.065,"y":-329.718},{"x":394.885,"y":-329.718}],"net":""},{"layers":["F"],"pos":[393.505,-332.718],"size":[1.18,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":393.505,"y":-332.718},"polygon":[{"x":392.915,"y":-335.718},{"x":394.095,"y":-335.718},{"x":394.095,"y":-329.718},{"x":392.915,"y":-329.718}],"net":"CC1"},{"layers":["F"],"pos":[391.535,-332.718],"size":[1.18,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":391.535,"y":-332.718},"polygon":[{"x":390.945,"y":-335.718},{"x":392.125,"y":-335.718},{"x":392.125,"y":-329.718},{"x":390.945,"y":-329.718}],"net":""},{"layers":["F"],"pos":[388.975,-332.718],"size":[2.36,6],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":388.975,"y":-332.718},"polygon":[{"x":387.795,"y":-335.718},{"x":390.155,"y":-335.718},{"x":390.155,"y":-329.718},{"x":387.795,"y":-329.718}],"net":"VDD"},{"layers":["F"],"pos":[385.825,-332.718],"size":[2.36,6],"angle":0,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":385.825,"y":-332.718},"polygon":[{"x":384.645,"y":-335.718},{"x":387.005,"y":-335.718},{"x":387.005,"y":-329.718},{"x":384.645,"y":-329.718}],"net":"GND"},{"layers":["F","B"],"pos":[381.415,-312.238],"size":[4.72,9.84],"angle":0,"shape":"oval","type":"th","drillsize":[2.76,7.09],"drillshape":"oblong","holeCenterPoint":{"x":381.415,"y":-312.238},"polygon":[{"x":381.3562,"y":-307.3187},{"x":381.2386,"y":-307.3246},{"x":381.1215,"y":-307.3363},{"x":381.0052,"y":-307.3539},{"x":380.8899,"y":-307.3772},{"x":380.7758,"y":-307.4062},{"x":380.6634,"y":-307.4409},{"x":380.5528,"y":-307.4811},{"x":380.4444,"y":-307.5268},{"x":380.3383,"y":-307.5779},{"x":380.235,"y":-307.6342},{"x":380.1346,"y":-307.6955},{"x":380.0374,"y":-307.7618},{"x":379.9436,"y":-307.8329},{"x":379.8534,"y":-307.9085},{"x":379.7672,"y":-307.9886},{"x":379.685,"y":-308.0728},{"x":379.6071,"y":-308.161},{"x":379.5338,"y":-308.253},{"x":379.4651,"y":-308.3486},{"x":379.4012,"y":-308.4474},{"x":379.3424,"y":-308.5493},{"x":379.2887,"y":-308.654},{"x":379.2403,"y":-308.7613},{"x":379.1973,"y":-308.8708},{"x":379.1598,"y":-308.9824},{"x":379.128,"y":-309.0957},{"x":379.1018,"y":-309.2104},{"x":379.0814,"y":-309.3263},{"x":379.0667,"y":-309.443},{"x":379.0579,"y":-309.5604},{"x":379.055,"y":-309.678},{"x":379.055,"y":-314.798},{"x":379.0579,"y":-314.9156},{"x":379.0667,"y":-315.033},{"x":379.0814,"y":-315.1497},{"x":379.1018,"y":-315.2656},{"x":379.128,"y":-315.3803},{"x":379.1598,"y":-315.4936},{"x":379.1973,"y":-315.6052},{"x":379.2403,"y":-315.7147},{"x":379.2887,"y":-315.822},{"x":379.3424,"y":-315.9267},{"x":379.4012,"y":-316.0286},{"x":379.4651,"y":-316.1274},{"x":379.5338,"y":-316.223},{"x":379.6071,"y":-316.315},{"x":379.685,"y":-316.4032},{"x":379.7672,"y":-316.4874},{"x":379.8534,"y":-316.5675},{"x":379.9436,"y":-316.6431},{"x":380.0374,"y":-316.7142},{"x":380.1346,"y":-316.7805},{"x":380.235,"y":-316.8418},{"x":380.3383,"y":-316.8981},{"x":380.4444,"y":-316.9492},{"x":380.5528,"y":-316.9949},{"x":380.6634,"y":-317.0351},{"x":380.7758,"y":-317.0698},{"x":380.8899,"y":-317.0988},{"x":381.0052,"y":-317.1221},{"x":381.1215,"y":-317.1397},{"x":381.2386,"y":-317.1514},{"x":381.3562,"y":-317.1573},{"x":381.4738,"y":-317.1573},{"x":381.5914,"y":-317.1514},{"x":381.7085,"y":-317.1397},{"x":381.8248,"y":-317.1221},{"x":381.9401,"y":-317.0988},{"x":382.0542,"y":-317.0698},{"x":382.1666,"y":-317.0351},{"x":382.2772,"y":-316.9949},{"x":382.3856,"y":-316.9492},{"x":382.4917,"y":-316.8981},{"x":382.595,"y":-316.8418},{"x":382.6954,"y":-316.7805},{"x":382.7926,"y":-316.7142},{"x":382.8864,"y":-316.6431},{"x":382.9766,"y":-316.5675},{"x":383.0628,"y":-316.4874},{"x":383.145,"y":-316.4032},{"x":383.2229,"y":-316.315},{"x":383.2962,"y":-316.223},{"x":383.3649,"y":-316.1274},{"x":383.4288,"y":-316.0286},{"x":383.4876,"y":-315.9267},{"x":383.5413,"y":-315.822},{"x":383.5897,"y":-315.7147},{"x":383.6327,"y":-315.6052},{"x":383.6702,"y":-315.4936},{"x":383.702,"y":-315.3803},{"x":383.7282,"y":-315.2656},{"x":383.7486,"y":-315.1497},{"x":383.7633,"y":-315.033},{"x":383.7721,"y":-314.9156},{"x":383.775,"y":-314.798},{"x":383.775,"y":-309.678},{"x":383.7721,"y":-309.5604},{"x":383.7633,"y":-309.443},{"x":383.7486,"y":-309.3263},{"x":383.7282,"y":-309.2104},{"x":383.702,"y":-309.0957},{"x":383.6702,"y":-308.9824},{"x":383.6327,"y":-308.8708},{"x":383.5897,"y":-308.7613},{"x":383.5413,"y":-308.654},{"x":383.4876,"y":-308.5493},{"x":383.4288,"y":-308.4474},{"x":383.3649,"y":-308.3486},{"x":383.2962,"y":-308.253},{"x":383.2229,"y":-308.161},{"x":383.145,"y":-308.0728},{"x":383.0628,"y":-307.9886},{"x":382.9766,"y":-307.9085},{"x":382.8864,"y":-307.8329},{"x":382.7926,"y":-307.7618},{"x":382.6954,"y":-307.6955},{"x":382.595,"y":-307.6342},{"x":382.4917,"y":-307.5779},{"x":382.3856,"y":-307.5268},{"x":382.2772,"y":-307.4811},{"x":382.1666,"y":-307.4409},{"x":382.0542,"y":-307.4062},{"x":381.9401,"y":-307.3772},{"x":381.8248,"y":-307.3539},{"x":381.7085,"y":-307.3363},{"x":381.5914,"y":-307.3246},{"x":381.4738,"y":-307.3187}],"net":"GND"},{"layers":["F","B"],"pos":[415.435,-312.238],"size":[4.72,9.84],"angle":0,"shape":"oval","type":"th","drillsize":[2.76,7.09],"drillshape":"oblong","holeCenterPoint":{"x":415.435,"y":-312.238},"polygon":[{"x":415.3762,"y":-307.3187},{"x":415.2586,"y":-307.3246},{"x":415.1415,"y":-307.3363},{"x":415.0252,"y":-307.3539},{"x":414.9099,"y":-307.3772},{"x":414.7958,"y":-307.4062},{"x":414.6834,"y":-307.4409},{"x":414.5728,"y":-307.4811},{"x":414.4644,"y":-307.5268},{"x":414.3583,"y":-307.5779},{"x":414.255,"y":-307.6342},{"x":414.1546,"y":-307.6955},{"x":414.0574,"y":-307.7618},{"x":413.9636,"y":-307.8329},{"x":413.8734,"y":-307.9085},{"x":413.7872,"y":-307.9886},{"x":413.705,"y":-308.0728},{"x":413.6271,"y":-308.161},{"x":413.5538,"y":-308.253},{"x":413.4851,"y":-308.3486},{"x":413.4212,"y":-308.4474},{"x":413.3624,"y":-308.5493},{"x":413.3087,"y":-308.654},{"x":413.2603,"y":-308.7613},{"x":413.2173,"y":-308.8708},{"x":413.1798,"y":-308.9824},{"x":413.148,"y":-309.0957},{"x":413.1218,"y":-309.2104},{"x":413.1014,"y":-309.3263},{"x":413.0867,"y":-309.443},{"x":413.0779,"y":-309.5604},{"x":413.075,"y":-309.678},{"x":413.075,"y":-314.798},{"x":413.0779,"y":-314.9156},{"x":413.0867,"y":-315.033},{"x":413.1014,"y":-315.1497},{"x":413.1218,"y":-315.2656},{"x":413.148,"y":-315.3803},{"x":413.1798,"y":-315.4936},{"x":413.2173,"y":-315.6052},{"x":413.2603,"y":-315.7147},{"x":413.3087,"y":-315.822},{"x":413.3624,"y":-315.9267},{"x":413.4212,"y":-316.0286},{"x":413.4851,"y":-316.1274},{"x":413.5538,"y":-316.223},{"x":413.6271,"y":-316.315},{"x":413.705,"y":-316.4032},{"x":413.7872,"y":-316.4874},{"x":413.8734,"y":-316.5675},{"x":413.9636,"y":-316.6431},{"x":414.0574,"y":-316.7142},{"x":414.1546,"y":-316.7805},{"x":414.255,"y":-316.8418},{"x":414.3583,"y":-316.8981},{"x":414.4644,"y":-316.9492},{"x":414.5728,"y":-316.9949},{"x":414.6834,"y":-317.0351},{"x":414.7958,"y":-317.0698},{"x":414.9099,"y":-317.0988},{"x":415.0252,"y":-317.1221},{"x":415.1415,"y":-317.1397},{"x":415.2586,"y":-317.1514},{"x":415.3762,"y":-317.1573},{"x":415.4938,"y":-317.1573},{"x":415.6114,"y":-317.1514},{"x":415.7285,"y":-317.1397},{"x":415.8448,"y":-317.1221},{"x":415.9601,"y":-317.0988},{"x":416.0742,"y":-317.0698},{"x":416.1866,"y":-317.0351},{"x":416.2972,"y":-316.9949},{"x":416.4056,"y":-316.9492},{"x":416.5117,"y":-316.8981},{"x":416.615,"y":-316.8418},{"x":416.7154,"y":-316.7805},{"x":416.8126,"y":-316.7142},{"x":416.9064,"y":-316.6431},{"x":416.9966,"y":-316.5675},{"x":417.0828,"y":-316.4874},{"x":417.165,"y":-316.4032},{"x":417.2429,"y":-316.315},{"x":417.3162,"y":-316.223},{"x":417.3849,"y":-316.1274},{"x":417.4488,"y":-316.0286},{"x":417.5076,"y":-315.9267},{"x":417.5613,"y":-315.822},{"x":417.6097,"y":-315.7147},{"x":417.6527,"y":-315.6052},{"x":417.6902,"y":-315.4936},{"x":417.722,"y":-315.3803},{"x":417.7482,"y":-315.2656},{"x":417.7686,"y":-315.1497},{"x":417.7833,"y":-315.033},{"x":417.7921,"y":-314.9156},{"x":417.795,"y":-314.798},{"x":417.795,"y":-309.678},{"x":417.7921,"y":-309.5604},{"x":417.7833,"y":-309.443},{"x":417.7686,"y":-309.3263},{"x":417.7482,"y":-309.2104},{"x":417.722,"y":-309.0957},{"x":417.6902,"y":-308.9824},{"x":417.6527,"y":-308.8708},{"x":417.6097,"y":-308.7613},{"x":417.5613,"y":-308.654},{"x":417.5076,"y":-308.5493},{"x":417.4488,"y":-308.4474},{"x":417.3849,"y":-308.3486},{"x":417.3162,"y":-308.253},{"x":417.2429,"y":-308.161},{"x":417.165,"y":-308.0728},{"x":417.0828,"y":-307.9886},{"x":416.9966,"y":-307.9085},{"x":416.9064,"y":-307.8329},{"x":416.8126,"y":-307.7618},{"x":416.7154,"y":-307.6955},{"x":416.615,"y":-307.6342},{"x":416.5117,"y":-307.5779},{"x":416.4056,"y":-307.5268},{"x":416.2972,"y":-307.4811},{"x":416.1866,"y":-307.4409},{"x":416.0742,"y":-307.4062},{"x":415.9601,"y":-307.3772},{"x":415.8448,"y":-307.3539},{"x":415.7285,"y":-307.3363},{"x":415.6114,"y":-307.3246},{"x":415.4938,"y":-307.3187}],"net":"GND"},{"layers":["F","B"],"pos":[415.435,-328.778],"size":[3.94,8.66],"angle":0,"shape":"oval","type":"th","drillsize":[2.76,5.91],"drillshape":"oblong","holeCenterPoint":{"x":415.435,"y":-328.778},"polygon":[{"x":415.3859,"y":-324.4486},{"x":415.2878,"y":-324.4535},{"x":415.19,"y":-324.4633},{"x":415.0929,"y":-324.4779},{"x":414.9966,"y":-324.4974},{"x":414.9014,"y":-324.5216},{"x":414.8076,"y":-324.5506},{"x":414.7153,"y":-324.5842},{"x":414.6248,"y":-324.6223},{"x":414.5363,"y":-324.665},{"x":414.45,"y":-324.7119},{"x":414.3662,"y":-324.7631},{"x":414.285,"y":-324.8185},{"x":414.2067,"y":-324.8778},{"x":414.1315,"y":-324.9409},{"x":414.0595,"y":-325.0077},{"x":413.9909,"y":-325.0781},{"x":413.9259,"y":-325.1517},{"x":413.8646,"y":-325.2285},{"x":413.8073,"y":-325.3083},{"x":413.754,"y":-325.3908},{"x":413.7049,"y":-325.4758},{"x":413.6601,"y":-325.5632},{"x":413.6197,"y":-325.6528},{"x":413.5838,"y":-325.7442},{"x":413.5525,"y":-325.8373},{"x":413.5259,"y":-325.9319},{"x":413.5041,"y":-326.0277},{"x":413.487,"y":-326.1244},{"x":413.4748,"y":-326.2219},{"x":413.4674,"y":-326.3198},{"x":413.465,"y":-326.418},{"x":413.465,"y":-331.138},{"x":413.4674,"y":-331.2362},{"x":413.4748,"y":-331.3341},{"x":413.487,"y":-331.4316},{"x":413.5041,"y":-331.5283},{"x":413.5259,"y":-331.6241},{"x":413.5525,"y":-331.7187},{"x":413.5838,"y":-331.8118},{"x":413.6197,"y":-331.9032},{"x":413.6601,"y":-331.9928},{"x":413.7049,"y":-332.0802},{"x":413.754,"y":-332.1652},{"x":413.8073,"y":-332.2477},{"x":413.8646,"y":-332.3275},{"x":413.9259,"y":-332.4043},{"x":413.9909,"y":-332.4779},{"x":414.0595,"y":-332.5483},{"x":414.1315,"y":-332.6151},{"x":414.2067,"y":-332.6782},{"x":414.285,"y":-332.7375},{"x":414.3662,"y":-332.7929},{"x":414.45,"y":-332.8441},{"x":414.5363,"y":-332.891},{"x":414.6248,"y":-332.9337},{"x":414.7153,"y":-332.9718},{"x":414.8076,"y":-333.0054},{"x":414.9014,"y":-333.0344},{"x":414.9966,"y":-333.0586},{"x":415.0929,"y":-333.0781},{"x":415.19,"y":-333.0927},{"x":415.2878,"y":-333.1025},{"x":415.3859,"y":-333.1074},{"x":415.4841,"y":-333.1074},{"x":415.5822,"y":-333.1025},{"x":415.68,"y":-333.0927},{"x":415.7771,"y":-333.0781},{"x":415.8734,"y":-333.0586},{"x":415.9686,"y":-333.0344},{"x":416.0624,"y":-333.0054},{"x":416.1547,"y":-332.9718},{"x":416.2452,"y":-332.9337},{"x":416.3337,"y":-332.891},{"x":416.42,"y":-332.8441},{"x":416.5038,"y":-332.7929},{"x":416.585,"y":-332.7375},{"x":416.6633,"y":-332.6782},{"x":416.7385,"y":-332.6151},{"x":416.8105,"y":-332.5483},{"x":416.8791,"y":-332.4779},{"x":416.9441,"y":-332.4043},{"x":417.0054,"y":-332.3275},{"x":417.0627,"y":-332.2477},{"x":417.116,"y":-332.1652},{"x":417.1651,"y":-332.0802},{"x":417.2099,"y":-331.9928},{"x":417.2503,"y":-331.9032},{"x":417.2862,"y":-331.8118},{"x":417.3175,"y":-331.7187},{"x":417.3441,"y":-331.6241},{"x":417.3659,"y":-331.5283},{"x":417.383,"y":-331.4316},{"x":417.3952,"y":-331.3341},{"x":417.4026,"y":-331.2362},{"x":417.405,"y":-331.138},{"x":417.405,"y":-326.418},{"x":417.4026,"y":-326.3198},{"x":417.3952,"y":-326.2219},{"x":417.383,"y":-326.1244},{"x":417.3659,"y":-326.0277},{"x":417.3441,"y":-325.9319},{"x":417.3175,"y":-325.8373},{"x":417.2862,"y":-325.7442},{"x":417.2503,"y":-325.6528},{"x":417.2099,"y":-325.5632},{"x":417.1651,"y":-325.4758},{"x":417.116,"y":-325.3908},{"x":417.0627,"y":-325.3083},{"x":417.0054,"y":-325.2285},{"x":416.9441,"y":-325.1517},{"x":416.8791,"y":-325.0781},{"x":416.8105,"y":-325.0077},{"x":416.7385,"y":-324.9409},{"x":416.6633,"y":-324.8778},{"x":416.585,"y":-324.8185},{"x":416.5038,"y":-324.7631},{"x":416.42,"y":-324.7119},{"x":416.3337,"y":-324.665},{"x":416.2452,"y":-324.6223},{"x":416.1547,"y":-324.5842},{"x":416.0624,"y":-324.5506},{"x":415.9686,"y":-324.5216},{"x":415.8734,"y":-324.4974},{"x":415.7771,"y":-324.4779},{"x":415.68,"y":-324.4633},{"x":415.5822,"y":-324.4535},{"x":415.4841,"y":-324.4486}],"net":"GND"},{"layers":["F","B"],"pos":[381.415,-328.778],"size":[3.94,8.66],"angle":0,"shape":"oval","type":"th","drillsize":[2.76,5.91],"drillshape":"oblong","holeCenterPoint":{"x":381.415,"y":-328.778},"polygon":[{"x":381.3659,"y":-324.4486},{"x":381.2678,"y":-324.4535},{"x":381.17,"y":-324.4633},{"x":381.0729,"y":-324.4779},{"x":380.9766,"y":-324.4974},{"x":380.8814,"y":-324.5216},{"x":380.7876,"y":-324.5506},{"x":380.6953,"y":-324.5842},{"x":380.6048,"y":-324.6223},{"x":380.5163,"y":-324.665},{"x":380.43,"y":-324.7119},{"x":380.3462,"y":-324.7631},{"x":380.265,"y":-324.8185},{"x":380.1867,"y":-324.8778},{"x":380.1115,"y":-324.9409},{"x":380.0395,"y":-325.0077},{"x":379.9709,"y":-325.0781},{"x":379.9059,"y":-325.1517},{"x":379.8446,"y":-325.2285},{"x":379.7873,"y":-325.3083},{"x":379.734,"y":-325.3908},{"x":379.6849,"y":-325.4758},{"x":379.6401,"y":-325.5632},{"x":379.5997,"y":-325.6528},{"x":379.5638,"y":-325.7442},{"x":379.5325,"y":-325.8373},{"x":379.5059,"y":-325.9319},{"x":379.4841,"y":-326.0277},{"x":379.467,"y":-326.1244},{"x":379.4548,"y":-326.2219},{"x":379.4474,"y":-326.3198},{"x":379.445,"y":-326.418},{"x":379.445,"y":-331.138},{"x":379.4474,"y":-331.2362},{"x":379.4548,"y":-331.3341},{"x":379.467,"y":-331.4316},{"x":379.4841,"y":-331.5283},{"x":379.5059,"y":-331.6241},{"x":379.5325,"y":-331.7187},{"x":379.5638,"y":-331.8118},{"x":379.5997,"y":-331.9032},{"x":379.6401,"y":-331.9928},{"x":379.6849,"y":-332.0802},{"x":379.734,"y":-332.1652},{"x":379.7873,"y":-332.2477},{"x":379.8446,"y":-332.3275},{"x":379.9059,"y":-332.4043},{"x":379.9709,"y":-332.4779},{"x":380.0395,"y":-332.5483},{"x":380.1115,"y":-332.6151},{"x":380.1867,"y":-332.6782},{"x":380.265,"y":-332.7375},{"x":380.3462,"y":-332.7929},{"x":380.43,"y":-332.8441},{"x":380.5163,"y":-332.891},{"x":380.6048,"y":-332.9337},{"x":380.6953,"y":-332.9718},{"x":380.7876,"y":-333.0054},{"x":380.8814,"y":-333.0344},{"x":380.9766,"y":-333.0586},{"x":381.0729,"y":-333.0781},{"x":381.17,"y":-333.0927},{"x":381.2678,"y":-333.1025},{"x":381.3659,"y":-333.1074},{"x":381.4641,"y":-333.1074},{"x":381.5622,"y":-333.1025},{"x":381.66,"y":-333.0927},{"x":381.7571,"y":-333.0781},{"x":381.8534,"y":-333.0586},{"x":381.9486,"y":-333.0344},{"x":382.0424,"y":-333.0054},{"x":382.1347,"y":-332.9718},{"x":382.2252,"y":-332.9337},{"x":382.3137,"y":-332.891},{"x":382.4,"y":-332.8441},{"x":382.4838,"y":-332.7929},{"x":382.565,"y":-332.7375},{"x":382.6433,"y":-332.6782},{"x":382.7185,"y":-332.6151},{"x":382.7905,"y":-332.5483},{"x":382.8591,"y":-332.4779},{"x":382.9241,"y":-332.4043},{"x":382.9854,"y":-332.3275},{"x":383.0427,"y":-332.2477},{"x":383.096,"y":-332.1652},{"x":383.1451,"y":-332.0802},{"x":383.1899,"y":-331.9928},{"x":383.2303,"y":-331.9032},{"x":383.2662,"y":-331.8118},{"x":383.2975,"y":-331.7187},{"x":383.3241,"y":-331.6241},{"x":383.3459,"y":-331.5283},{"x":383.363,"y":-331.4316},{"x":383.3752,"y":-331.3341},{"x":383.3826,"y":-331.2362},{"x":383.385,"y":-331.138},{"x":383.385,"y":-326.418},{"x":383.3826,"y":-326.3198},{"x":383.3752,"y":-326.2219},{"x":383.363,"y":-326.1244},{"x":383.3459,"y":-326.0277},{"x":383.3241,"y":-325.9319},{"x":383.2975,"y":-325.8373},{"x":383.2662,"y":-325.7442},{"x":383.2303,"y":-325.6528},{"x":383.1899,"y":-325.5632},{"x":383.1451,"y":-325.4758},{"x":383.096,"y":-325.3908},{"x":383.0427,"y":-325.3083},{"x":382.9854,"y":-325.2285},{"x":382.9241,"y":-325.1517},{"x":382.8591,"y":-325.0781},{"x":382.7905,"y":-325.0077},{"x":382.7185,"y":-324.9409},{"x":382.6433,"y":-324.8778},{"x":382.565,"y":-324.8185},{"x":382.4838,"y":-324.7631},{"x":382.4,"y":-324.7119},{"x":382.3137,"y":-324.665},{"x":382.2252,"y":-324.6223},{"x":382.1347,"y":-324.5842},{"x":382.0424,"y":-324.5506},{"x":381.9486,"y":-324.5216},{"x":381.8534,"y":-324.4974},{"x":381.7571,"y":-324.4779},{"x":381.66,"y":-324.4633},{"x":381.5622,"y":-324.4535},{"x":381.4641,"y":-324.4486}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"U20","center":[430.7084,-356.5334],"bbox":{"pos":[430.7084,-356.5334],"angle":270,"relpos":[-11.959600000000023,-11.544600000000003],"size":[23.920000000000016,23.089999999999975]},"pads":[{"layers":["F"],"pos":[419.838,-365.493],"size":[1.35,6],"angle":-270,"pin1":1,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.838,"y":-365.493},"polygon":[{"x":417.513,"y":-364.818},{"x":417.4794,"y":-364.8188},{"x":417.4458,"y":-364.8214},{"x":417.4124,"y":-364.8255},{"x":417.3793,"y":-364.8314},{"x":417.3464,"y":-364.8389},{"x":417.314,"y":-364.848},{"x":417.2821,"y":-364.8587},{"x":417.2508,"y":-364.871},{"x":417.2201,"y":-364.8848},{"x":417.1902,"y":-364.9002},{"x":417.161,"y":-364.917},{"x":417.1328,"y":-364.9353},{"x":417.1054,"y":-364.9549},{"x":417.0791,"y":-364.9759},{"x":417.0539,"y":-364.9982},{"x":417.0298,"y":-365.0217},{"x":417.0069,"y":-365.0464},{"x":416.9853,"y":-365.0721},{"x":416.9649,"y":-365.099},{"x":416.946,"y":-365.1268},{"x":416.9284,"y":-365.1555},{"x":416.9123,"y":-365.1851},{"x":416.8977,"y":-365.2154},{"x":416.8847,"y":-365.2464},{"x":416.8731,"y":-365.278},{"x":416.8632,"y":-365.3102},{"x":416.8549,"y":-365.3428},{"x":416.8483,"y":-365.3758},{"x":416.8432,"y":-365.4091},{"x":416.8399,"y":-365.4426},{"x":416.8382,"y":-365.4762},{"x":416.8382,"y":-365.5098},{"x":416.8399,"y":-365.5434},{"x":416.8432,"y":-365.5769},{"x":416.8483,"y":-365.6102},{"x":416.8549,"y":-365.6432},{"x":416.8632,"y":-365.6758},{"x":416.8731,"y":-365.708},{"x":416.8847,"y":-365.7396},{"x":416.8977,"y":-365.7706},{"x":416.9123,"y":-365.8009},{"x":416.9284,"y":-365.8305},{"x":416.946,"y":-365.8592},{"x":416.9649,"y":-365.887},{"x":416.9853,"y":-365.9139},{"x":417.0069,"y":-365.9396},{"x":417.0298,"y":-365.9643},{"x":417.0539,"y":-365.9878},{"x":417.0791,"y":-366.0101},{"x":417.1054,"y":-366.0311},{"x":417.1328,"y":-366.0507},{"x":417.161,"y":-366.069},{"x":417.1902,"y":-366.0858},{"x":417.2201,"y":-366.1012},{"x":417.2508,"y":-366.115},{"x":417.2821,"y":-366.1273},{"x":417.314,"y":-366.138},{"x":417.3464,"y":-366.1471},{"x":417.3793,"y":-366.1546},{"x":417.4124,"y":-366.1605},{"x":417.4458,"y":-366.1646},{"x":417.4794,"y":-366.1672},{"x":417.513,"y":-366.168},{"x":422.163,"y":-366.168},{"x":422.1966,"y":-366.1672},{"x":422.2302,"y":-366.1646},{"x":422.2636,"y":-366.1605},{"x":422.2967,"y":-366.1546},{"x":422.3296,"y":-366.1471},{"x":422.362,"y":-366.138},{"x":422.3939,"y":-366.1273},{"x":422.4252,"y":-366.115},{"x":422.4559,"y":-366.1012},{"x":422.4858,"y":-366.0858},{"x":422.515,"y":-366.069},{"x":422.5432,"y":-366.0507},{"x":422.5706,"y":-366.0311},{"x":422.5969,"y":-366.0101},{"x":422.6221,"y":-365.9878},{"x":422.6462,"y":-365.9643},{"x":422.6691,"y":-365.9396},{"x":422.6907,"y":-365.9139},{"x":422.7111,"y":-365.887},{"x":422.73,"y":-365.8592},{"x":422.7476,"y":-365.8305},{"x":422.7637,"y":-365.8009},{"x":422.7783,"y":-365.7706},{"x":422.7913,"y":-365.7396},{"x":422.8029,"y":-365.708},{"x":422.8128,"y":-365.6758},{"x":422.8211,"y":-365.6432},{"x":422.8277,"y":-365.6102},{"x":422.8328,"y":-365.5769},{"x":422.8361,"y":-365.5434},{"x":422.8378,"y":-365.5098},{"x":422.8378,"y":-365.4762},{"x":422.8361,"y":-365.4426},{"x":422.8328,"y":-365.4091},{"x":422.8277,"y":-365.3758},{"x":422.8211,"y":-365.3428},{"x":422.8128,"y":-365.3102},{"x":422.8029,"y":-365.278},{"x":422.7913,"y":-365.2464},{"x":422.7783,"y":-365.2154},{"x":422.7637,"y":-365.1851},{"x":422.7476,"y":-365.1555},{"x":422.73,"y":-365.1268},{"x":422.7111,"y":-365.099},{"x":422.6907,"y":-365.0721},{"x":422.6691,"y":-365.0464},{"x":422.6462,"y":-365.0217},{"x":422.6221,"y":-364.9982},{"x":422.5969,"y":-364.9759},{"x":422.5706,"y":-364.9549},{"x":422.5432,"y":-364.9353},{"x":422.515,"y":-364.917},{"x":422.4858,"y":-364.9002},{"x":422.4559,"y":-364.8848},{"x":422.4252,"y":-364.871},{"x":422.3939,"y":-364.8587},{"x":422.362,"y":-364.848},{"x":422.3296,"y":-364.8389},{"x":422.2967,"y":-364.8314},{"x":422.2636,"y":-364.8255},{"x":422.2302,"y":-364.8214},{"x":422.1966,"y":-364.8188},{"x":422.163,"y":-364.818}],"net":"$1N49187"},{"layers":["F"],"pos":[419.838,-362.933],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.838,"y":-362.933},"polygon":[{"x":417.513,"y":-362.258},{"x":417.4794,"y":-362.2588},{"x":417.4458,"y":-362.2614},{"x":417.4124,"y":-362.2655},{"x":417.3793,"y":-362.2714},{"x":417.3464,"y":-362.2789},{"x":417.314,"y":-362.288},{"x":417.2821,"y":-362.2987},{"x":417.2508,"y":-362.311},{"x":417.2201,"y":-362.3248},{"x":417.1902,"y":-362.3402},{"x":417.161,"y":-362.357},{"x":417.1328,"y":-362.3753},{"x":417.1054,"y":-362.3949},{"x":417.0791,"y":-362.4159},{"x":417.0539,"y":-362.4382},{"x":417.0298,"y":-362.4617},{"x":417.0069,"y":-362.4864},{"x":416.9853,"y":-362.5121},{"x":416.9649,"y":-362.539},{"x":416.946,"y":-362.5668},{"x":416.9284,"y":-362.5955},{"x":416.9123,"y":-362.6251},{"x":416.8977,"y":-362.6554},{"x":416.8847,"y":-362.6864},{"x":416.8731,"y":-362.718},{"x":416.8632,"y":-362.7502},{"x":416.8549,"y":-362.7828},{"x":416.8483,"y":-362.8158},{"x":416.8432,"y":-362.8491},{"x":416.8399,"y":-362.8826},{"x":416.8382,"y":-362.9162},{"x":416.8382,"y":-362.9498},{"x":416.8399,"y":-362.9834},{"x":416.8432,"y":-363.0169},{"x":416.8483,"y":-363.0502},{"x":416.8549,"y":-363.0832},{"x":416.8632,"y":-363.1158},{"x":416.8731,"y":-363.148},{"x":416.8847,"y":-363.1796},{"x":416.8977,"y":-363.2106},{"x":416.9123,"y":-363.2409},{"x":416.9284,"y":-363.2705},{"x":416.946,"y":-363.2992},{"x":416.9649,"y":-363.327},{"x":416.9853,"y":-363.3539},{"x":417.0069,"y":-363.3796},{"x":417.0298,"y":-363.4043},{"x":417.0539,"y":-363.4278},{"x":417.0791,"y":-363.4501},{"x":417.1054,"y":-363.4711},{"x":417.1328,"y":-363.4907},{"x":417.161,"y":-363.509},{"x":417.1902,"y":-363.5258},{"x":417.2201,"y":-363.5412},{"x":417.2508,"y":-363.555},{"x":417.2821,"y":-363.5673},{"x":417.314,"y":-363.578},{"x":417.3464,"y":-363.5871},{"x":417.3793,"y":-363.5946},{"x":417.4124,"y":-363.6005},{"x":417.4458,"y":-363.6046},{"x":417.4794,"y":-363.6072},{"x":417.513,"y":-363.608},{"x":422.163,"y":-363.608},{"x":422.1966,"y":-363.6072},{"x":422.2302,"y":-363.6046},{"x":422.2636,"y":-363.6005},{"x":422.2967,"y":-363.5946},{"x":422.3296,"y":-363.5871},{"x":422.362,"y":-363.578},{"x":422.3939,"y":-363.5673},{"x":422.4252,"y":-363.555},{"x":422.4559,"y":-363.5412},{"x":422.4858,"y":-363.5258},{"x":422.515,"y":-363.509},{"x":422.5432,"y":-363.4907},{"x":422.5706,"y":-363.4711},{"x":422.5969,"y":-363.4501},{"x":422.6221,"y":-363.4278},{"x":422.6462,"y":-363.4043},{"x":422.6691,"y":-363.3796},{"x":422.6907,"y":-363.3539},{"x":422.7111,"y":-363.327},{"x":422.73,"y":-363.2992},{"x":422.7476,"y":-363.2705},{"x":422.7637,"y":-363.2409},{"x":422.7783,"y":-363.2106},{"x":422.7913,"y":-363.1796},{"x":422.8029,"y":-363.148},{"x":422.8128,"y":-363.1158},{"x":422.8211,"y":-363.0832},{"x":422.8277,"y":-363.0502},{"x":422.8328,"y":-363.0169},{"x":422.8361,"y":-362.9834},{"x":422.8378,"y":-362.9498},{"x":422.8378,"y":-362.9162},{"x":422.8361,"y":-362.8826},{"x":422.8328,"y":-362.8491},{"x":422.8277,"y":-362.8158},{"x":422.8211,"y":-362.7828},{"x":422.8128,"y":-362.7502},{"x":422.8029,"y":-362.718},{"x":422.7913,"y":-362.6864},{"x":422.7783,"y":-362.6554},{"x":422.7637,"y":-362.6251},{"x":422.7476,"y":-362.5955},{"x":422.73,"y":-362.5668},{"x":422.7111,"y":-362.539},{"x":422.6907,"y":-362.5121},{"x":422.6691,"y":-362.4864},{"x":422.6462,"y":-362.4617},{"x":422.6221,"y":-362.4382},{"x":422.5969,"y":-362.4159},{"x":422.5706,"y":-362.3949},{"x":422.5432,"y":-362.3753},{"x":422.515,"y":-362.357},{"x":422.4858,"y":-362.3402},{"x":422.4559,"y":-362.3248},{"x":422.4252,"y":-362.311},{"x":422.3939,"y":-362.2987},{"x":422.362,"y":-362.288},{"x":422.3296,"y":-362.2789},{"x":422.2967,"y":-362.2714},{"x":422.2636,"y":-362.2655},{"x":422.2302,"y":-362.2614},{"x":422.1966,"y":-362.2588},{"x":422.163,"y":-362.258}],"net":"VDD"},{"layers":["F"],"pos":[419.838,-360.373],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.838,"y":-360.373},"polygon":[{"x":417.513,"y":-359.698},{"x":417.4794,"y":-359.6988},{"x":417.4458,"y":-359.7014},{"x":417.4124,"y":-359.7055},{"x":417.3793,"y":-359.7114},{"x":417.3464,"y":-359.7189},{"x":417.314,"y":-359.728},{"x":417.2821,"y":-359.7387},{"x":417.2508,"y":-359.751},{"x":417.2201,"y":-359.7648},{"x":417.1902,"y":-359.7802},{"x":417.161,"y":-359.797},{"x":417.1328,"y":-359.8153},{"x":417.1054,"y":-359.8349},{"x":417.0791,"y":-359.8559},{"x":417.0539,"y":-359.8782},{"x":417.0298,"y":-359.9017},{"x":417.0069,"y":-359.9264},{"x":416.9853,"y":-359.9521},{"x":416.9649,"y":-359.979},{"x":416.946,"y":-360.0068},{"x":416.9284,"y":-360.0355},{"x":416.9123,"y":-360.0651},{"x":416.8977,"y":-360.0954},{"x":416.8847,"y":-360.1264},{"x":416.8731,"y":-360.158},{"x":416.8632,"y":-360.1902},{"x":416.8549,"y":-360.2228},{"x":416.8483,"y":-360.2558},{"x":416.8432,"y":-360.2891},{"x":416.8399,"y":-360.3226},{"x":416.8382,"y":-360.3562},{"x":416.8382,"y":-360.3898},{"x":416.8399,"y":-360.4234},{"x":416.8432,"y":-360.4569},{"x":416.8483,"y":-360.4902},{"x":416.8549,"y":-360.5232},{"x":416.8632,"y":-360.5558},{"x":416.8731,"y":-360.588},{"x":416.8847,"y":-360.6196},{"x":416.8977,"y":-360.6506},{"x":416.9123,"y":-360.6809},{"x":416.9284,"y":-360.7105},{"x":416.946,"y":-360.7392},{"x":416.9649,"y":-360.767},{"x":416.9853,"y":-360.7939},{"x":417.0069,"y":-360.8196},{"x":417.0298,"y":-360.8443},{"x":417.0539,"y":-360.8678},{"x":417.0791,"y":-360.8901},{"x":417.1054,"y":-360.9111},{"x":417.1328,"y":-360.9307},{"x":417.161,"y":-360.949},{"x":417.1902,"y":-360.9658},{"x":417.2201,"y":-360.9812},{"x":417.2508,"y":-360.995},{"x":417.2821,"y":-361.0073},{"x":417.314,"y":-361.018},{"x":417.3464,"y":-361.0271},{"x":417.3793,"y":-361.0346},{"x":417.4124,"y":-361.0405},{"x":417.4458,"y":-361.0446},{"x":417.4794,"y":-361.0472},{"x":417.513,"y":-361.048},{"x":422.163,"y":-361.048},{"x":422.1966,"y":-361.0472},{"x":422.2302,"y":-361.0446},{"x":422.2636,"y":-361.0405},{"x":422.2967,"y":-361.0346},{"x":422.3296,"y":-361.0271},{"x":422.362,"y":-361.018},{"x":422.3939,"y":-361.0073},{"x":422.4252,"y":-360.995},{"x":422.4559,"y":-360.9812},{"x":422.4858,"y":-360.9658},{"x":422.515,"y":-360.949},{"x":422.5432,"y":-360.9307},{"x":422.5706,"y":-360.9111},{"x":422.5969,"y":-360.8901},{"x":422.6221,"y":-360.8678},{"x":422.6462,"y":-360.8443},{"x":422.6691,"y":-360.8196},{"x":422.6907,"y":-360.7939},{"x":422.7111,"y":-360.767},{"x":422.73,"y":-360.7392},{"x":422.7476,"y":-360.7105},{"x":422.7637,"y":-360.6809},{"x":422.7783,"y":-360.6506},{"x":422.7913,"y":-360.6196},{"x":422.8029,"y":-360.588},{"x":422.8128,"y":-360.5558},{"x":422.8211,"y":-360.5232},{"x":422.8277,"y":-360.4902},{"x":422.8328,"y":-360.4569},{"x":422.8361,"y":-360.4234},{"x":422.8378,"y":-360.3898},{"x":422.8378,"y":-360.3562},{"x":422.8361,"y":-360.3226},{"x":422.8328,"y":-360.2891},{"x":422.8277,"y":-360.2558},{"x":422.8211,"y":-360.2228},{"x":422.8128,"y":-360.1902},{"x":422.8029,"y":-360.158},{"x":422.7913,"y":-360.1264},{"x":422.7783,"y":-360.0954},{"x":422.7637,"y":-360.0651},{"x":422.7476,"y":-360.0355},{"x":422.73,"y":-360.0068},{"x":422.7111,"y":-359.979},{"x":422.6907,"y":-359.9521},{"x":422.6691,"y":-359.9264},{"x":422.6462,"y":-359.9017},{"x":422.6221,"y":-359.8782},{"x":422.5969,"y":-359.8559},{"x":422.5706,"y":-359.8349},{"x":422.5432,"y":-359.8153},{"x":422.515,"y":-359.797},{"x":422.4858,"y":-359.7802},{"x":422.4559,"y":-359.7648},{"x":422.4252,"y":-359.751},{"x":422.3939,"y":-359.7387},{"x":422.362,"y":-359.728},{"x":422.3296,"y":-359.7189},{"x":422.2967,"y":-359.7114},{"x":422.2636,"y":-359.7055},{"x":422.2302,"y":-359.7014},{"x":422.1966,"y":-359.6988},{"x":422.163,"y":-359.698}],"net":""},{"layers":["F"],"pos":[419.838,-357.813],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.838,"y":-357.813},"polygon":[{"x":417.513,"y":-357.138},{"x":417.4794,"y":-357.1388},{"x":417.4458,"y":-357.1414},{"x":417.4124,"y":-357.1455},{"x":417.3793,"y":-357.1514},{"x":417.3464,"y":-357.1589},{"x":417.314,"y":-357.168},{"x":417.2821,"y":-357.1787},{"x":417.2508,"y":-357.191},{"x":417.2201,"y":-357.2048},{"x":417.1902,"y":-357.2202},{"x":417.161,"y":-357.237},{"x":417.1328,"y":-357.2553},{"x":417.1054,"y":-357.2749},{"x":417.0791,"y":-357.2959},{"x":417.0539,"y":-357.3182},{"x":417.0298,"y":-357.3417},{"x":417.0069,"y":-357.3664},{"x":416.9853,"y":-357.3921},{"x":416.9649,"y":-357.419},{"x":416.946,"y":-357.4468},{"x":416.9284,"y":-357.4755},{"x":416.9123,"y":-357.5051},{"x":416.8977,"y":-357.5354},{"x":416.8847,"y":-357.5664},{"x":416.8731,"y":-357.598},{"x":416.8632,"y":-357.6302},{"x":416.8549,"y":-357.6628},{"x":416.8483,"y":-357.6958},{"x":416.8432,"y":-357.7291},{"x":416.8399,"y":-357.7626},{"x":416.8382,"y":-357.7962},{"x":416.8382,"y":-357.8298},{"x":416.8399,"y":-357.8634},{"x":416.8432,"y":-357.8969},{"x":416.8483,"y":-357.9302},{"x":416.8549,"y":-357.9632},{"x":416.8632,"y":-357.9958},{"x":416.8731,"y":-358.028},{"x":416.8847,"y":-358.0596},{"x":416.8977,"y":-358.0906},{"x":416.9123,"y":-358.1209},{"x":416.9284,"y":-358.1505},{"x":416.946,"y":-358.1792},{"x":416.9649,"y":-358.207},{"x":416.9853,"y":-358.2339},{"x":417.0069,"y":-358.2596},{"x":417.0298,"y":-358.2843},{"x":417.0539,"y":-358.3078},{"x":417.0791,"y":-358.3301},{"x":417.1054,"y":-358.3511},{"x":417.1328,"y":-358.3707},{"x":417.161,"y":-358.389},{"x":417.1902,"y":-358.4058},{"x":417.2201,"y":-358.4212},{"x":417.2508,"y":-358.435},{"x":417.2821,"y":-358.4473},{"x":417.314,"y":-358.458},{"x":417.3464,"y":-358.4671},{"x":417.3793,"y":-358.4746},{"x":417.4124,"y":-358.4805},{"x":417.4458,"y":-358.4846},{"x":417.4794,"y":-358.4872},{"x":417.513,"y":-358.488},{"x":422.163,"y":-358.488},{"x":422.1966,"y":-358.4872},{"x":422.2302,"y":-358.4846},{"x":422.2636,"y":-358.4805},{"x":422.2967,"y":-358.4746},{"x":422.3296,"y":-358.4671},{"x":422.362,"y":-358.458},{"x":422.3939,"y":-358.4473},{"x":422.4252,"y":-358.435},{"x":422.4559,"y":-358.4212},{"x":422.4858,"y":-358.4058},{"x":422.515,"y":-358.389},{"x":422.5432,"y":-358.3707},{"x":422.5706,"y":-358.3511},{"x":422.5969,"y":-358.3301},{"x":422.6221,"y":-358.3078},{"x":422.6462,"y":-358.2843},{"x":422.6691,"y":-358.2596},{"x":422.6907,"y":-358.2339},{"x":422.7111,"y":-358.207},{"x":422.73,"y":-358.1792},{"x":422.7476,"y":-358.1505},{"x":422.7637,"y":-358.1209},{"x":422.7783,"y":-358.0906},{"x":422.7913,"y":-358.0596},{"x":422.8029,"y":-358.028},{"x":422.8128,"y":-357.9958},{"x":422.8211,"y":-357.9632},{"x":422.8277,"y":-357.9302},{"x":422.8328,"y":-357.8969},{"x":422.8361,"y":-357.8634},{"x":422.8378,"y":-357.8298},{"x":422.8378,"y":-357.7962},{"x":422.8361,"y":-357.7626},{"x":422.8328,"y":-357.7291},{"x":422.8277,"y":-357.6958},{"x":422.8211,"y":-357.6628},{"x":422.8128,"y":-357.6302},{"x":422.8029,"y":-357.598},{"x":422.7913,"y":-357.5664},{"x":422.7783,"y":-357.5354},{"x":422.7637,"y":-357.5051},{"x":422.7476,"y":-357.4755},{"x":422.73,"y":-357.4468},{"x":422.7111,"y":-357.419},{"x":422.6907,"y":-357.3921},{"x":422.6691,"y":-357.3664},{"x":422.6462,"y":-357.3417},{"x":422.6221,"y":-357.3182},{"x":422.5969,"y":-357.2959},{"x":422.5706,"y":-357.2749},{"x":422.5432,"y":-357.2553},{"x":422.515,"y":-357.237},{"x":422.4858,"y":-357.2202},{"x":422.4559,"y":-357.2048},{"x":422.4252,"y":-357.191},{"x":422.3939,"y":-357.1787},{"x":422.362,"y":-357.168},{"x":422.3296,"y":-357.1589},{"x":422.2967,"y":-357.1514},{"x":422.2636,"y":-357.1455},{"x":422.2302,"y":-357.1414},{"x":422.1966,"y":-357.1388},{"x":422.163,"y":-357.138}],"net":""},{"layers":["F"],"pos":[419.838,-355.253],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.838,"y":-355.253},"polygon":[{"x":417.513,"y":-354.578},{"x":417.4794,"y":-354.5788},{"x":417.4458,"y":-354.5814},{"x":417.4124,"y":-354.5855},{"x":417.3793,"y":-354.5914},{"x":417.3464,"y":-354.5989},{"x":417.314,"y":-354.608},{"x":417.2821,"y":-354.6187},{"x":417.2508,"y":-354.631},{"x":417.2201,"y":-354.6448},{"x":417.1902,"y":-354.6602},{"x":417.161,"y":-354.677},{"x":417.1328,"y":-354.6953},{"x":417.1054,"y":-354.7149},{"x":417.0791,"y":-354.7359},{"x":417.0539,"y":-354.7582},{"x":417.0298,"y":-354.7817},{"x":417.0069,"y":-354.8064},{"x":416.9853,"y":-354.8321},{"x":416.9649,"y":-354.859},{"x":416.946,"y":-354.8868},{"x":416.9284,"y":-354.9155},{"x":416.9123,"y":-354.9451},{"x":416.8977,"y":-354.9754},{"x":416.8847,"y":-355.0064},{"x":416.8731,"y":-355.038},{"x":416.8632,"y":-355.0702},{"x":416.8549,"y":-355.1028},{"x":416.8483,"y":-355.1358},{"x":416.8432,"y":-355.1691},{"x":416.8399,"y":-355.2026},{"x":416.8382,"y":-355.2362},{"x":416.8382,"y":-355.2698},{"x":416.8399,"y":-355.3034},{"x":416.8432,"y":-355.3369},{"x":416.8483,"y":-355.3702},{"x":416.8549,"y":-355.4032},{"x":416.8632,"y":-355.4358},{"x":416.8731,"y":-355.468},{"x":416.8847,"y":-355.4996},{"x":416.8977,"y":-355.5306},{"x":416.9123,"y":-355.5609},{"x":416.9284,"y":-355.5905},{"x":416.946,"y":-355.6192},{"x":416.9649,"y":-355.647},{"x":416.9853,"y":-355.6739},{"x":417.0069,"y":-355.6996},{"x":417.0298,"y":-355.7243},{"x":417.0539,"y":-355.7478},{"x":417.0791,"y":-355.7701},{"x":417.1054,"y":-355.7911},{"x":417.1328,"y":-355.8107},{"x":417.161,"y":-355.829},{"x":417.1902,"y":-355.8458},{"x":417.2201,"y":-355.8612},{"x":417.2508,"y":-355.875},{"x":417.2821,"y":-355.8873},{"x":417.314,"y":-355.898},{"x":417.3464,"y":-355.9071},{"x":417.3793,"y":-355.9146},{"x":417.4124,"y":-355.9205},{"x":417.4458,"y":-355.9246},{"x":417.4794,"y":-355.9272},{"x":417.513,"y":-355.928},{"x":422.163,"y":-355.928},{"x":422.1966,"y":-355.9272},{"x":422.2302,"y":-355.9246},{"x":422.2636,"y":-355.9205},{"x":422.2967,"y":-355.9146},{"x":422.3296,"y":-355.9071},{"x":422.362,"y":-355.898},{"x":422.3939,"y":-355.8873},{"x":422.4252,"y":-355.875},{"x":422.4559,"y":-355.8612},{"x":422.4858,"y":-355.8458},{"x":422.515,"y":-355.829},{"x":422.5432,"y":-355.8107},{"x":422.5706,"y":-355.7911},{"x":422.5969,"y":-355.7701},{"x":422.6221,"y":-355.7478},{"x":422.6462,"y":-355.7243},{"x":422.6691,"y":-355.6996},{"x":422.6907,"y":-355.6739},{"x":422.7111,"y":-355.647},{"x":422.73,"y":-355.6192},{"x":422.7476,"y":-355.5905},{"x":422.7637,"y":-355.5609},{"x":422.7783,"y":-355.5306},{"x":422.7913,"y":-355.4996},{"x":422.8029,"y":-355.468},{"x":422.8128,"y":-355.4358},{"x":422.8211,"y":-355.4032},{"x":422.8277,"y":-355.3702},{"x":422.8328,"y":-355.3369},{"x":422.8361,"y":-355.3034},{"x":422.8378,"y":-355.2698},{"x":422.8378,"y":-355.2362},{"x":422.8361,"y":-355.2026},{"x":422.8328,"y":-355.1691},{"x":422.8277,"y":-355.1358},{"x":422.8211,"y":-355.1028},{"x":422.8128,"y":-355.0702},{"x":422.8029,"y":-355.038},{"x":422.7913,"y":-355.0064},{"x":422.7783,"y":-354.9754},{"x":422.7637,"y":-354.9451},{"x":422.7476,"y":-354.9155},{"x":422.73,"y":-354.8868},{"x":422.7111,"y":-354.859},{"x":422.6907,"y":-354.8321},{"x":422.6691,"y":-354.8064},{"x":422.6462,"y":-354.7817},{"x":422.6221,"y":-354.7582},{"x":422.5969,"y":-354.7359},{"x":422.5706,"y":-354.7149},{"x":422.5432,"y":-354.6953},{"x":422.515,"y":-354.677},{"x":422.4858,"y":-354.6602},{"x":422.4559,"y":-354.6448},{"x":422.4252,"y":-354.631},{"x":422.3939,"y":-354.6187},{"x":422.362,"y":-354.608},{"x":422.3296,"y":-354.5989},{"x":422.2967,"y":-354.5914},{"x":422.2636,"y":-354.5855},{"x":422.2302,"y":-354.5814},{"x":422.1966,"y":-354.5788},{"x":422.163,"y":-354.578}],"net":"GND"},{"layers":["F"],"pos":[419.838,-352.693],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.838,"y":-352.693},"polygon":[{"x":417.513,"y":-352.018},{"x":417.4794,"y":-352.0188},{"x":417.4458,"y":-352.0214},{"x":417.4124,"y":-352.0255},{"x":417.3793,"y":-352.0314},{"x":417.3464,"y":-352.0389},{"x":417.314,"y":-352.048},{"x":417.2821,"y":-352.0587},{"x":417.2508,"y":-352.071},{"x":417.2201,"y":-352.0848},{"x":417.1902,"y":-352.1002},{"x":417.161,"y":-352.117},{"x":417.1328,"y":-352.1353},{"x":417.1054,"y":-352.1549},{"x":417.0791,"y":-352.1759},{"x":417.0539,"y":-352.1982},{"x":417.0298,"y":-352.2217},{"x":417.0069,"y":-352.2464},{"x":416.9853,"y":-352.2721},{"x":416.9649,"y":-352.299},{"x":416.946,"y":-352.3268},{"x":416.9284,"y":-352.3555},{"x":416.9123,"y":-352.3851},{"x":416.8977,"y":-352.4154},{"x":416.8847,"y":-352.4464},{"x":416.8731,"y":-352.478},{"x":416.8632,"y":-352.5102},{"x":416.8549,"y":-352.5428},{"x":416.8483,"y":-352.5758},{"x":416.8432,"y":-352.6091},{"x":416.8399,"y":-352.6426},{"x":416.8382,"y":-352.6762},{"x":416.8382,"y":-352.7098},{"x":416.8399,"y":-352.7434},{"x":416.8432,"y":-352.7769},{"x":416.8483,"y":-352.8102},{"x":416.8549,"y":-352.8432},{"x":416.8632,"y":-352.8758},{"x":416.8731,"y":-352.908},{"x":416.8847,"y":-352.9396},{"x":416.8977,"y":-352.9706},{"x":416.9123,"y":-353.0009},{"x":416.9284,"y":-353.0305},{"x":416.946,"y":-353.0592},{"x":416.9649,"y":-353.087},{"x":416.9853,"y":-353.1139},{"x":417.0069,"y":-353.1396},{"x":417.0298,"y":-353.1643},{"x":417.0539,"y":-353.1878},{"x":417.0791,"y":-353.2101},{"x":417.1054,"y":-353.2311},{"x":417.1328,"y":-353.2507},{"x":417.161,"y":-353.269},{"x":417.1902,"y":-353.2858},{"x":417.2201,"y":-353.3012},{"x":417.2508,"y":-353.315},{"x":417.2821,"y":-353.3273},{"x":417.314,"y":-353.338},{"x":417.3464,"y":-353.3471},{"x":417.3793,"y":-353.3546},{"x":417.4124,"y":-353.3605},{"x":417.4458,"y":-353.3646},{"x":417.4794,"y":-353.3672},{"x":417.513,"y":-353.368},{"x":422.163,"y":-353.368},{"x":422.1966,"y":-353.3672},{"x":422.2302,"y":-353.3646},{"x":422.2636,"y":-353.3605},{"x":422.2967,"y":-353.3546},{"x":422.3296,"y":-353.3471},{"x":422.362,"y":-353.338},{"x":422.3939,"y":-353.3273},{"x":422.4252,"y":-353.315},{"x":422.4559,"y":-353.3012},{"x":422.4858,"y":-353.2858},{"x":422.515,"y":-353.269},{"x":422.5432,"y":-353.2507},{"x":422.5706,"y":-353.2311},{"x":422.5969,"y":-353.2101},{"x":422.6221,"y":-353.1878},{"x":422.6462,"y":-353.1643},{"x":422.6691,"y":-353.1396},{"x":422.6907,"y":-353.1139},{"x":422.7111,"y":-353.087},{"x":422.73,"y":-353.0592},{"x":422.7476,"y":-353.0305},{"x":422.7637,"y":-353.0009},{"x":422.7783,"y":-352.9706},{"x":422.7913,"y":-352.9396},{"x":422.8029,"y":-352.908},{"x":422.8128,"y":-352.8758},{"x":422.8211,"y":-352.8432},{"x":422.8277,"y":-352.8102},{"x":422.8328,"y":-352.7769},{"x":422.8361,"y":-352.7434},{"x":422.8378,"y":-352.7098},{"x":422.8378,"y":-352.6762},{"x":422.8361,"y":-352.6426},{"x":422.8328,"y":-352.6091},{"x":422.8277,"y":-352.5758},{"x":422.8211,"y":-352.5428},{"x":422.8128,"y":-352.5102},{"x":422.8029,"y":-352.478},{"x":422.7913,"y":-352.4464},{"x":422.7783,"y":-352.4154},{"x":422.7637,"y":-352.3851},{"x":422.7476,"y":-352.3555},{"x":422.73,"y":-352.3268},{"x":422.7111,"y":-352.299},{"x":422.6907,"y":-352.2721},{"x":422.6691,"y":-352.2464},{"x":422.6462,"y":-352.2217},{"x":422.6221,"y":-352.1982},{"x":422.5969,"y":-352.1759},{"x":422.5706,"y":-352.1549},{"x":422.5432,"y":-352.1353},{"x":422.515,"y":-352.117},{"x":422.4858,"y":-352.1002},{"x":422.4559,"y":-352.0848},{"x":422.4252,"y":-352.071},{"x":422.3939,"y":-352.0587},{"x":422.362,"y":-352.048},{"x":422.3296,"y":-352.0389},{"x":422.2967,"y":-352.0314},{"x":422.2636,"y":-352.0255},{"x":422.2302,"y":-352.0214},{"x":422.1966,"y":-352.0188},{"x":422.163,"y":-352.018}],"net":""},{"layers":["F"],"pos":[419.838,-350.133],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.838,"y":-350.133},"polygon":[{"x":417.513,"y":-349.458},{"x":417.4794,"y":-349.4588},{"x":417.4458,"y":-349.4614},{"x":417.4124,"y":-349.4655},{"x":417.3793,"y":-349.4714},{"x":417.3464,"y":-349.4789},{"x":417.314,"y":-349.488},{"x":417.2821,"y":-349.4987},{"x":417.2508,"y":-349.511},{"x":417.2201,"y":-349.5248},{"x":417.1902,"y":-349.5402},{"x":417.161,"y":-349.557},{"x":417.1328,"y":-349.5753},{"x":417.1054,"y":-349.5949},{"x":417.0791,"y":-349.6159},{"x":417.0539,"y":-349.6382},{"x":417.0298,"y":-349.6617},{"x":417.0069,"y":-349.6864},{"x":416.9853,"y":-349.7121},{"x":416.9649,"y":-349.739},{"x":416.946,"y":-349.7668},{"x":416.9284,"y":-349.7955},{"x":416.9123,"y":-349.8251},{"x":416.8977,"y":-349.8554},{"x":416.8847,"y":-349.8864},{"x":416.8731,"y":-349.918},{"x":416.8632,"y":-349.9502},{"x":416.8549,"y":-349.9828},{"x":416.8483,"y":-350.0158},{"x":416.8432,"y":-350.0491},{"x":416.8399,"y":-350.0826},{"x":416.8382,"y":-350.1162},{"x":416.8382,"y":-350.1498},{"x":416.8399,"y":-350.1834},{"x":416.8432,"y":-350.2169},{"x":416.8483,"y":-350.2502},{"x":416.8549,"y":-350.2832},{"x":416.8632,"y":-350.3158},{"x":416.8731,"y":-350.348},{"x":416.8847,"y":-350.3796},{"x":416.8977,"y":-350.4106},{"x":416.9123,"y":-350.4409},{"x":416.9284,"y":-350.4705},{"x":416.946,"y":-350.4992},{"x":416.9649,"y":-350.527},{"x":416.9853,"y":-350.5539},{"x":417.0069,"y":-350.5796},{"x":417.0298,"y":-350.6043},{"x":417.0539,"y":-350.6278},{"x":417.0791,"y":-350.6501},{"x":417.1054,"y":-350.6711},{"x":417.1328,"y":-350.6907},{"x":417.161,"y":-350.709},{"x":417.1902,"y":-350.7258},{"x":417.2201,"y":-350.7412},{"x":417.2508,"y":-350.755},{"x":417.2821,"y":-350.7673},{"x":417.314,"y":-350.778},{"x":417.3464,"y":-350.7871},{"x":417.3793,"y":-350.7946},{"x":417.4124,"y":-350.8005},{"x":417.4458,"y":-350.8046},{"x":417.4794,"y":-350.8072},{"x":417.513,"y":-350.808},{"x":422.163,"y":-350.808},{"x":422.1966,"y":-350.8072},{"x":422.2302,"y":-350.8046},{"x":422.2636,"y":-350.8005},{"x":422.2967,"y":-350.7946},{"x":422.3296,"y":-350.7871},{"x":422.362,"y":-350.778},{"x":422.3939,"y":-350.7673},{"x":422.4252,"y":-350.755},{"x":422.4559,"y":-350.7412},{"x":422.4858,"y":-350.7258},{"x":422.515,"y":-350.709},{"x":422.5432,"y":-350.6907},{"x":422.5706,"y":-350.6711},{"x":422.5969,"y":-350.6501},{"x":422.6221,"y":-350.6278},{"x":422.6462,"y":-350.6043},{"x":422.6691,"y":-350.5796},{"x":422.6907,"y":-350.5539},{"x":422.7111,"y":-350.527},{"x":422.73,"y":-350.4992},{"x":422.7476,"y":-350.4705},{"x":422.7637,"y":-350.4409},{"x":422.7783,"y":-350.4106},{"x":422.7913,"y":-350.3796},{"x":422.8029,"y":-350.348},{"x":422.8128,"y":-350.3158},{"x":422.8211,"y":-350.2832},{"x":422.8277,"y":-350.2502},{"x":422.8328,"y":-350.2169},{"x":422.8361,"y":-350.1834},{"x":422.8378,"y":-350.1498},{"x":422.8378,"y":-350.1162},{"x":422.8361,"y":-350.0826},{"x":422.8328,"y":-350.0491},{"x":422.8277,"y":-350.0158},{"x":422.8211,"y":-349.9828},{"x":422.8128,"y":-349.9502},{"x":422.8029,"y":-349.918},{"x":422.7913,"y":-349.8864},{"x":422.7783,"y":-349.8554},{"x":422.7637,"y":-349.8251},{"x":422.7476,"y":-349.7955},{"x":422.73,"y":-349.7668},{"x":422.7111,"y":-349.739},{"x":422.6907,"y":-349.7121},{"x":422.6691,"y":-349.6864},{"x":422.6462,"y":-349.6617},{"x":422.6221,"y":-349.6382},{"x":422.5969,"y":-349.6159},{"x":422.5706,"y":-349.5949},{"x":422.5432,"y":-349.5753},{"x":422.515,"y":-349.557},{"x":422.4858,"y":-349.5402},{"x":422.4559,"y":-349.5248},{"x":422.4252,"y":-349.511},{"x":422.3939,"y":-349.4987},{"x":422.362,"y":-349.488},{"x":422.3296,"y":-349.4789},{"x":422.2967,"y":-349.4714},{"x":422.2636,"y":-349.4655},{"x":422.2302,"y":-349.4614},{"x":422.1966,"y":-349.4588},{"x":422.163,"y":-349.458}],"net":""},{"layers":["F"],"pos":[419.838,-347.573],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.838,"y":-347.573},"polygon":[{"x":417.513,"y":-346.898},{"x":417.4794,"y":-346.8988},{"x":417.4458,"y":-346.9014},{"x":417.4124,"y":-346.9055},{"x":417.3793,"y":-346.9114},{"x":417.3464,"y":-346.9189},{"x":417.314,"y":-346.928},{"x":417.2821,"y":-346.9387},{"x":417.2508,"y":-346.951},{"x":417.2201,"y":-346.9648},{"x":417.1902,"y":-346.9802},{"x":417.161,"y":-346.997},{"x":417.1328,"y":-347.0153},{"x":417.1054,"y":-347.0349},{"x":417.0791,"y":-347.0559},{"x":417.0539,"y":-347.0782},{"x":417.0298,"y":-347.1017},{"x":417.0069,"y":-347.1264},{"x":416.9853,"y":-347.1521},{"x":416.9649,"y":-347.179},{"x":416.946,"y":-347.2068},{"x":416.9284,"y":-347.2355},{"x":416.9123,"y":-347.2651},{"x":416.8977,"y":-347.2954},{"x":416.8847,"y":-347.3264},{"x":416.8731,"y":-347.358},{"x":416.8632,"y":-347.3902},{"x":416.8549,"y":-347.4228},{"x":416.8483,"y":-347.4558},{"x":416.8432,"y":-347.4891},{"x":416.8399,"y":-347.5226},{"x":416.8382,"y":-347.5562},{"x":416.8382,"y":-347.5898},{"x":416.8399,"y":-347.6234},{"x":416.8432,"y":-347.6569},{"x":416.8483,"y":-347.6902},{"x":416.8549,"y":-347.7232},{"x":416.8632,"y":-347.7558},{"x":416.8731,"y":-347.788},{"x":416.8847,"y":-347.8196},{"x":416.8977,"y":-347.8506},{"x":416.9123,"y":-347.8809},{"x":416.9284,"y":-347.9105},{"x":416.946,"y":-347.9392},{"x":416.9649,"y":-347.967},{"x":416.9853,"y":-347.9939},{"x":417.0069,"y":-348.0196},{"x":417.0298,"y":-348.0443},{"x":417.0539,"y":-348.0678},{"x":417.0791,"y":-348.0901},{"x":417.1054,"y":-348.1111},{"x":417.1328,"y":-348.1307},{"x":417.161,"y":-348.149},{"x":417.1902,"y":-348.1658},{"x":417.2201,"y":-348.1812},{"x":417.2508,"y":-348.195},{"x":417.2821,"y":-348.2073},{"x":417.314,"y":-348.218},{"x":417.3464,"y":-348.2271},{"x":417.3793,"y":-348.2346},{"x":417.4124,"y":-348.2405},{"x":417.4458,"y":-348.2446},{"x":417.4794,"y":-348.2472},{"x":417.513,"y":-348.248},{"x":422.163,"y":-348.248},{"x":422.1966,"y":-348.2472},{"x":422.2302,"y":-348.2446},{"x":422.2636,"y":-348.2405},{"x":422.2967,"y":-348.2346},{"x":422.3296,"y":-348.2271},{"x":422.362,"y":-348.218},{"x":422.3939,"y":-348.2073},{"x":422.4252,"y":-348.195},{"x":422.4559,"y":-348.1812},{"x":422.4858,"y":-348.1658},{"x":422.515,"y":-348.149},{"x":422.5432,"y":-348.1307},{"x":422.5706,"y":-348.1111},{"x":422.5969,"y":-348.0901},{"x":422.6221,"y":-348.0678},{"x":422.6462,"y":-348.0443},{"x":422.6691,"y":-348.0196},{"x":422.6907,"y":-347.9939},{"x":422.7111,"y":-347.967},{"x":422.73,"y":-347.9392},{"x":422.7476,"y":-347.9105},{"x":422.7637,"y":-347.8809},{"x":422.7783,"y":-347.8506},{"x":422.7913,"y":-347.8196},{"x":422.8029,"y":-347.788},{"x":422.8128,"y":-347.7558},{"x":422.8211,"y":-347.7232},{"x":422.8277,"y":-347.6902},{"x":422.8328,"y":-347.6569},{"x":422.8361,"y":-347.6234},{"x":422.8378,"y":-347.5898},{"x":422.8378,"y":-347.5562},{"x":422.8361,"y":-347.5226},{"x":422.8328,"y":-347.4891},{"x":422.8277,"y":-347.4558},{"x":422.8211,"y":-347.4228},{"x":422.8128,"y":-347.3902},{"x":422.8029,"y":-347.358},{"x":422.7913,"y":-347.3264},{"x":422.7783,"y":-347.2954},{"x":422.7637,"y":-347.2651},{"x":422.7476,"y":-347.2355},{"x":422.73,"y":-347.2068},{"x":422.7111,"y":-347.179},{"x":422.6907,"y":-347.1521},{"x":422.6691,"y":-347.1264},{"x":422.6462,"y":-347.1017},{"x":422.6221,"y":-347.0782},{"x":422.5969,"y":-347.0559},{"x":422.5706,"y":-347.0349},{"x":422.5432,"y":-347.0153},{"x":422.515,"y":-346.997},{"x":422.4858,"y":-346.9802},{"x":422.4559,"y":-346.9648},{"x":422.4252,"y":-346.951},{"x":422.3939,"y":-346.9387},{"x":422.362,"y":-346.928},{"x":422.3296,"y":-346.9189},{"x":422.2967,"y":-346.9114},{"x":422.2636,"y":-346.9055},{"x":422.2302,"y":-346.9014},{"x":422.1966,"y":-346.8988},{"x":422.163,"y":-346.898}],"net":""},{"layers":["F"],"pos":[441.578,-365.493],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":441.578,"y":-365.493},"polygon":[{"x":439.253,"y":-364.818},{"x":439.2194,"y":-364.8188},{"x":439.1858,"y":-364.8214},{"x":439.1524,"y":-364.8255},{"x":439.1193,"y":-364.8314},{"x":439.0864,"y":-364.8389},{"x":439.054,"y":-364.848},{"x":439.0221,"y":-364.8587},{"x":438.9908,"y":-364.871},{"x":438.9601,"y":-364.8848},{"x":438.9302,"y":-364.9002},{"x":438.901,"y":-364.917},{"x":438.8728,"y":-364.9353},{"x":438.8454,"y":-364.9549},{"x":438.8191,"y":-364.9759},{"x":438.7939,"y":-364.9982},{"x":438.7698,"y":-365.0217},{"x":438.7469,"y":-365.0464},{"x":438.7253,"y":-365.0721},{"x":438.7049,"y":-365.099},{"x":438.686,"y":-365.1268},{"x":438.6684,"y":-365.1555},{"x":438.6523,"y":-365.1851},{"x":438.6377,"y":-365.2154},{"x":438.6247,"y":-365.2464},{"x":438.6131,"y":-365.278},{"x":438.6032,"y":-365.3102},{"x":438.5949,"y":-365.3428},{"x":438.5883,"y":-365.3758},{"x":438.5832,"y":-365.4091},{"x":438.5799,"y":-365.4426},{"x":438.5782,"y":-365.4762},{"x":438.5782,"y":-365.5098},{"x":438.5799,"y":-365.5434},{"x":438.5832,"y":-365.5769},{"x":438.5883,"y":-365.6102},{"x":438.5949,"y":-365.6432},{"x":438.6032,"y":-365.6758},{"x":438.6131,"y":-365.708},{"x":438.6247,"y":-365.7396},{"x":438.6377,"y":-365.7706},{"x":438.6523,"y":-365.8009},{"x":438.6684,"y":-365.8305},{"x":438.686,"y":-365.8592},{"x":438.7049,"y":-365.887},{"x":438.7253,"y":-365.9139},{"x":438.7469,"y":-365.9396},{"x":438.7698,"y":-365.9643},{"x":438.7939,"y":-365.9878},{"x":438.8191,"y":-366.0101},{"x":438.8454,"y":-366.0311},{"x":438.8728,"y":-366.0507},{"x":438.901,"y":-366.069},{"x":438.9302,"y":-366.0858},{"x":438.9601,"y":-366.1012},{"x":438.9908,"y":-366.115},{"x":439.0221,"y":-366.1273},{"x":439.054,"y":-366.138},{"x":439.0864,"y":-366.1471},{"x":439.1193,"y":-366.1546},{"x":439.1524,"y":-366.1605},{"x":439.1858,"y":-366.1646},{"x":439.2194,"y":-366.1672},{"x":439.253,"y":-366.168},{"x":443.903,"y":-366.168},{"x":443.9366,"y":-366.1672},{"x":443.9702,"y":-366.1646},{"x":444.0036,"y":-366.1605},{"x":444.0367,"y":-366.1546},{"x":444.0696,"y":-366.1471},{"x":444.102,"y":-366.138},{"x":444.1339,"y":-366.1273},{"x":444.1652,"y":-366.115},{"x":444.1959,"y":-366.1012},{"x":444.2258,"y":-366.0858},{"x":444.255,"y":-366.069},{"x":444.2832,"y":-366.0507},{"x":444.3106,"y":-366.0311},{"x":444.3369,"y":-366.0101},{"x":444.3621,"y":-365.9878},{"x":444.3862,"y":-365.9643},{"x":444.4091,"y":-365.9396},{"x":444.4307,"y":-365.9139},{"x":444.4511,"y":-365.887},{"x":444.47,"y":-365.8592},{"x":444.4876,"y":-365.8305},{"x":444.5037,"y":-365.8009},{"x":444.5183,"y":-365.7706},{"x":444.5313,"y":-365.7396},{"x":444.5429,"y":-365.708},{"x":444.5528,"y":-365.6758},{"x":444.5611,"y":-365.6432},{"x":444.5677,"y":-365.6102},{"x":444.5728,"y":-365.5769},{"x":444.5761,"y":-365.5434},{"x":444.5778,"y":-365.5098},{"x":444.5778,"y":-365.4762},{"x":444.5761,"y":-365.4426},{"x":444.5728,"y":-365.4091},{"x":444.5677,"y":-365.3758},{"x":444.5611,"y":-365.3428},{"x":444.5528,"y":-365.3102},{"x":444.5429,"y":-365.278},{"x":444.5313,"y":-365.2464},{"x":444.5183,"y":-365.2154},{"x":444.5037,"y":-365.1851},{"x":444.4876,"y":-365.1555},{"x":444.47,"y":-365.1268},{"x":444.4511,"y":-365.099},{"x":444.4307,"y":-365.0721},{"x":444.4091,"y":-365.0464},{"x":444.3862,"y":-365.0217},{"x":444.3621,"y":-364.9982},{"x":444.3369,"y":-364.9759},{"x":444.3106,"y":-364.9549},{"x":444.2832,"y":-364.9353},{"x":444.255,"y":-364.917},{"x":444.2258,"y":-364.9002},{"x":444.1959,"y":-364.8848},{"x":444.1652,"y":-364.871},{"x":444.1339,"y":-364.8587},{"x":444.102,"y":-364.848},{"x":444.0696,"y":-364.8389},{"x":444.0367,"y":-364.8314},{"x":444.0036,"y":-364.8255},{"x":443.9702,"y":-364.8214},{"x":443.9366,"y":-364.8188},{"x":443.903,"y":-364.818}],"net":"VCC"},{"layers":["F"],"pos":[441.578,-362.933],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":441.578,"y":-362.933},"polygon":[{"x":439.253,"y":-362.258},{"x":439.2194,"y":-362.2588},{"x":439.1858,"y":-362.2614},{"x":439.1524,"y":-362.2655},{"x":439.1193,"y":-362.2714},{"x":439.0864,"y":-362.2789},{"x":439.054,"y":-362.288},{"x":439.0221,"y":-362.2987},{"x":438.9908,"y":-362.311},{"x":438.9601,"y":-362.3248},{"x":438.9302,"y":-362.3402},{"x":438.901,"y":-362.357},{"x":438.8728,"y":-362.3753},{"x":438.8454,"y":-362.3949},{"x":438.8191,"y":-362.4159},{"x":438.7939,"y":-362.4382},{"x":438.7698,"y":-362.4617},{"x":438.7469,"y":-362.4864},{"x":438.7253,"y":-362.5121},{"x":438.7049,"y":-362.539},{"x":438.686,"y":-362.5668},{"x":438.6684,"y":-362.5955},{"x":438.6523,"y":-362.6251},{"x":438.6377,"y":-362.6554},{"x":438.6247,"y":-362.6864},{"x":438.6131,"y":-362.718},{"x":438.6032,"y":-362.7502},{"x":438.5949,"y":-362.7828},{"x":438.5883,"y":-362.8158},{"x":438.5832,"y":-362.8491},{"x":438.5799,"y":-362.8826},{"x":438.5782,"y":-362.9162},{"x":438.5782,"y":-362.9498},{"x":438.5799,"y":-362.9834},{"x":438.5832,"y":-363.0169},{"x":438.5883,"y":-363.0502},{"x":438.5949,"y":-363.0832},{"x":438.6032,"y":-363.1158},{"x":438.6131,"y":-363.148},{"x":438.6247,"y":-363.1796},{"x":438.6377,"y":-363.2106},{"x":438.6523,"y":-363.2409},{"x":438.6684,"y":-363.2705},{"x":438.686,"y":-363.2992},{"x":438.7049,"y":-363.327},{"x":438.7253,"y":-363.3539},{"x":438.7469,"y":-363.3796},{"x":438.7698,"y":-363.4043},{"x":438.7939,"y":-363.4278},{"x":438.8191,"y":-363.4501},{"x":438.8454,"y":-363.4711},{"x":438.8728,"y":-363.4907},{"x":438.901,"y":-363.509},{"x":438.9302,"y":-363.5258},{"x":438.9601,"y":-363.5412},{"x":438.9908,"y":-363.555},{"x":439.0221,"y":-363.5673},{"x":439.054,"y":-363.578},{"x":439.0864,"y":-363.5871},{"x":439.1193,"y":-363.5946},{"x":439.1524,"y":-363.6005},{"x":439.1858,"y":-363.6046},{"x":439.2194,"y":-363.6072},{"x":439.253,"y":-363.608},{"x":443.903,"y":-363.608},{"x":443.9366,"y":-363.6072},{"x":443.9702,"y":-363.6046},{"x":444.0036,"y":-363.6005},{"x":444.0367,"y":-363.5946},{"x":444.0696,"y":-363.5871},{"x":444.102,"y":-363.578},{"x":444.1339,"y":-363.5673},{"x":444.1652,"y":-363.555},{"x":444.1959,"y":-363.5412},{"x":444.2258,"y":-363.5258},{"x":444.255,"y":-363.509},{"x":444.2832,"y":-363.4907},{"x":444.3106,"y":-363.4711},{"x":444.3369,"y":-363.4501},{"x":444.3621,"y":-363.4278},{"x":444.3862,"y":-363.4043},{"x":444.4091,"y":-363.3796},{"x":444.4307,"y":-363.3539},{"x":444.4511,"y":-363.327},{"x":444.47,"y":-363.2992},{"x":444.4876,"y":-363.2705},{"x":444.5037,"y":-363.2409},{"x":444.5183,"y":-363.2106},{"x":444.5313,"y":-363.1796},{"x":444.5429,"y":-363.148},{"x":444.5528,"y":-363.1158},{"x":444.5611,"y":-363.0832},{"x":444.5677,"y":-363.0502},{"x":444.5728,"y":-363.0169},{"x":444.5761,"y":-362.9834},{"x":444.5778,"y":-362.9498},{"x":444.5778,"y":-362.9162},{"x":444.5761,"y":-362.8826},{"x":444.5728,"y":-362.8491},{"x":444.5677,"y":-362.8158},{"x":444.5611,"y":-362.7828},{"x":444.5528,"y":-362.7502},{"x":444.5429,"y":-362.718},{"x":444.5313,"y":-362.6864},{"x":444.5183,"y":-362.6554},{"x":444.5037,"y":-362.6251},{"x":444.4876,"y":-362.5955},{"x":444.47,"y":-362.5668},{"x":444.4511,"y":-362.539},{"x":444.4307,"y":-362.5121},{"x":444.4091,"y":-362.4864},{"x":444.3862,"y":-362.4617},{"x":444.3621,"y":-362.4382},{"x":444.3369,"y":-362.4159},{"x":444.3106,"y":-362.3949},{"x":444.2832,"y":-362.3753},{"x":444.255,"y":-362.357},{"x":444.2258,"y":-362.3402},{"x":444.1959,"y":-362.3248},{"x":444.1652,"y":-362.311},{"x":444.1339,"y":-362.2987},{"x":444.102,"y":-362.288},{"x":444.0696,"y":-362.2789},{"x":444.0367,"y":-362.2714},{"x":444.0036,"y":-362.2655},{"x":443.9702,"y":-362.2614},{"x":443.9366,"y":-362.2588},{"x":443.903,"y":-362.258}],"net":""},{"layers":["F"],"pos":[441.578,-360.373],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":441.578,"y":-360.373},"polygon":[{"x":439.253,"y":-359.698},{"x":439.2194,"y":-359.6988},{"x":439.1858,"y":-359.7014},{"x":439.1524,"y":-359.7055},{"x":439.1193,"y":-359.7114},{"x":439.0864,"y":-359.7189},{"x":439.054,"y":-359.728},{"x":439.0221,"y":-359.7387},{"x":438.9908,"y":-359.751},{"x":438.9601,"y":-359.7648},{"x":438.9302,"y":-359.7802},{"x":438.901,"y":-359.797},{"x":438.8728,"y":-359.8153},{"x":438.8454,"y":-359.8349},{"x":438.8191,"y":-359.8559},{"x":438.7939,"y":-359.8782},{"x":438.7698,"y":-359.9017},{"x":438.7469,"y":-359.9264},{"x":438.7253,"y":-359.9521},{"x":438.7049,"y":-359.979},{"x":438.686,"y":-360.0068},{"x":438.6684,"y":-360.0355},{"x":438.6523,"y":-360.0651},{"x":438.6377,"y":-360.0954},{"x":438.6247,"y":-360.1264},{"x":438.6131,"y":-360.158},{"x":438.6032,"y":-360.1902},{"x":438.5949,"y":-360.2228},{"x":438.5883,"y":-360.2558},{"x":438.5832,"y":-360.2891},{"x":438.5799,"y":-360.3226},{"x":438.5782,"y":-360.3562},{"x":438.5782,"y":-360.3898},{"x":438.5799,"y":-360.4234},{"x":438.5832,"y":-360.4569},{"x":438.5883,"y":-360.4902},{"x":438.5949,"y":-360.5232},{"x":438.6032,"y":-360.5558},{"x":438.6131,"y":-360.588},{"x":438.6247,"y":-360.6196},{"x":438.6377,"y":-360.6506},{"x":438.6523,"y":-360.6809},{"x":438.6684,"y":-360.7105},{"x":438.686,"y":-360.7392},{"x":438.7049,"y":-360.767},{"x":438.7253,"y":-360.7939},{"x":438.7469,"y":-360.8196},{"x":438.7698,"y":-360.8443},{"x":438.7939,"y":-360.8678},{"x":438.8191,"y":-360.8901},{"x":438.8454,"y":-360.9111},{"x":438.8728,"y":-360.9307},{"x":438.901,"y":-360.949},{"x":438.9302,"y":-360.9658},{"x":438.9601,"y":-360.9812},{"x":438.9908,"y":-360.995},{"x":439.0221,"y":-361.0073},{"x":439.054,"y":-361.018},{"x":439.0864,"y":-361.0271},{"x":439.1193,"y":-361.0346},{"x":439.1524,"y":-361.0405},{"x":439.1858,"y":-361.0446},{"x":439.2194,"y":-361.0472},{"x":439.253,"y":-361.048},{"x":443.903,"y":-361.048},{"x":443.9366,"y":-361.0472},{"x":443.9702,"y":-361.0446},{"x":444.0036,"y":-361.0405},{"x":444.0367,"y":-361.0346},{"x":444.0696,"y":-361.0271},{"x":444.102,"y":-361.018},{"x":444.1339,"y":-361.0073},{"x":444.1652,"y":-360.995},{"x":444.1959,"y":-360.9812},{"x":444.2258,"y":-360.9658},{"x":444.255,"y":-360.949},{"x":444.2832,"y":-360.9307},{"x":444.3106,"y":-360.9111},{"x":444.3369,"y":-360.8901},{"x":444.3621,"y":-360.8678},{"x":444.3862,"y":-360.8443},{"x":444.4091,"y":-360.8196},{"x":444.4307,"y":-360.7939},{"x":444.4511,"y":-360.767},{"x":444.47,"y":-360.7392},{"x":444.4876,"y":-360.7105},{"x":444.5037,"y":-360.6809},{"x":444.5183,"y":-360.6506},{"x":444.5313,"y":-360.6196},{"x":444.5429,"y":-360.588},{"x":444.5528,"y":-360.5558},{"x":444.5611,"y":-360.5232},{"x":444.5677,"y":-360.4902},{"x":444.5728,"y":-360.4569},{"x":444.5761,"y":-360.4234},{"x":444.5778,"y":-360.3898},{"x":444.5778,"y":-360.3562},{"x":444.5761,"y":-360.3226},{"x":444.5728,"y":-360.2891},{"x":444.5677,"y":-360.2558},{"x":444.5611,"y":-360.2228},{"x":444.5528,"y":-360.1902},{"x":444.5429,"y":-360.158},{"x":444.5313,"y":-360.1264},{"x":444.5183,"y":-360.0954},{"x":444.5037,"y":-360.0651},{"x":444.4876,"y":-360.0355},{"x":444.47,"y":-360.0068},{"x":444.4511,"y":-359.979},{"x":444.4307,"y":-359.9521},{"x":444.4091,"y":-359.9264},{"x":444.3862,"y":-359.9017},{"x":444.3621,"y":-359.8782},{"x":444.3369,"y":-359.8559},{"x":444.3106,"y":-359.8349},{"x":444.2832,"y":-359.8153},{"x":444.255,"y":-359.797},{"x":444.2258,"y":-359.7802},{"x":444.1959,"y":-359.7648},{"x":444.1652,"y":-359.751},{"x":444.1339,"y":-359.7387},{"x":444.102,"y":-359.728},{"x":444.0696,"y":-359.7189},{"x":444.0367,"y":-359.7114},{"x":444.0036,"y":-359.7055},{"x":443.9702,"y":-359.7014},{"x":443.9366,"y":-359.6988},{"x":443.903,"y":-359.698}],"net":""},{"layers":["F"],"pos":[441.578,-357.813],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":441.578,"y":-357.813},"polygon":[{"x":439.253,"y":-357.138},{"x":439.2194,"y":-357.1388},{"x":439.1858,"y":-357.1414},{"x":439.1524,"y":-357.1455},{"x":439.1193,"y":-357.1514},{"x":439.0864,"y":-357.1589},{"x":439.054,"y":-357.168},{"x":439.0221,"y":-357.1787},{"x":438.9908,"y":-357.191},{"x":438.9601,"y":-357.2048},{"x":438.9302,"y":-357.2202},{"x":438.901,"y":-357.237},{"x":438.8728,"y":-357.2553},{"x":438.8454,"y":-357.2749},{"x":438.8191,"y":-357.2959},{"x":438.7939,"y":-357.3182},{"x":438.7698,"y":-357.3417},{"x":438.7469,"y":-357.3664},{"x":438.7253,"y":-357.3921},{"x":438.7049,"y":-357.419},{"x":438.686,"y":-357.4468},{"x":438.6684,"y":-357.4755},{"x":438.6523,"y":-357.5051},{"x":438.6377,"y":-357.5354},{"x":438.6247,"y":-357.5664},{"x":438.6131,"y":-357.598},{"x":438.6032,"y":-357.6302},{"x":438.5949,"y":-357.6628},{"x":438.5883,"y":-357.6958},{"x":438.5832,"y":-357.7291},{"x":438.5799,"y":-357.7626},{"x":438.5782,"y":-357.7962},{"x":438.5782,"y":-357.8298},{"x":438.5799,"y":-357.8634},{"x":438.5832,"y":-357.8969},{"x":438.5883,"y":-357.9302},{"x":438.5949,"y":-357.9632},{"x":438.6032,"y":-357.9958},{"x":438.6131,"y":-358.028},{"x":438.6247,"y":-358.0596},{"x":438.6377,"y":-358.0906},{"x":438.6523,"y":-358.1209},{"x":438.6684,"y":-358.1505},{"x":438.686,"y":-358.1792},{"x":438.7049,"y":-358.207},{"x":438.7253,"y":-358.2339},{"x":438.7469,"y":-358.2596},{"x":438.7698,"y":-358.2843},{"x":438.7939,"y":-358.3078},{"x":438.8191,"y":-358.3301},{"x":438.8454,"y":-358.3511},{"x":438.8728,"y":-358.3707},{"x":438.901,"y":-358.389},{"x":438.9302,"y":-358.4058},{"x":438.9601,"y":-358.4212},{"x":438.9908,"y":-358.435},{"x":439.0221,"y":-358.4473},{"x":439.054,"y":-358.458},{"x":439.0864,"y":-358.4671},{"x":439.1193,"y":-358.4746},{"x":439.1524,"y":-358.4805},{"x":439.1858,"y":-358.4846},{"x":439.2194,"y":-358.4872},{"x":439.253,"y":-358.488},{"x":443.903,"y":-358.488},{"x":443.9366,"y":-358.4872},{"x":443.9702,"y":-358.4846},{"x":444.0036,"y":-358.4805},{"x":444.0367,"y":-358.4746},{"x":444.0696,"y":-358.4671},{"x":444.102,"y":-358.458},{"x":444.1339,"y":-358.4473},{"x":444.1652,"y":-358.435},{"x":444.1959,"y":-358.4212},{"x":444.2258,"y":-358.4058},{"x":444.255,"y":-358.389},{"x":444.2832,"y":-358.3707},{"x":444.3106,"y":-358.3511},{"x":444.3369,"y":-358.3301},{"x":444.3621,"y":-358.3078},{"x":444.3862,"y":-358.2843},{"x":444.4091,"y":-358.2596},{"x":444.4307,"y":-358.2339},{"x":444.4511,"y":-358.207},{"x":444.47,"y":-358.1792},{"x":444.4876,"y":-358.1505},{"x":444.5037,"y":-358.1209},{"x":444.5183,"y":-358.0906},{"x":444.5313,"y":-358.0596},{"x":444.5429,"y":-358.028},{"x":444.5528,"y":-357.9958},{"x":444.5611,"y":-357.9632},{"x":444.5677,"y":-357.9302},{"x":444.5728,"y":-357.8969},{"x":444.5761,"y":-357.8634},{"x":444.5778,"y":-357.8298},{"x":444.5778,"y":-357.7962},{"x":444.5761,"y":-357.7626},{"x":444.5728,"y":-357.7291},{"x":444.5677,"y":-357.6958},{"x":444.5611,"y":-357.6628},{"x":444.5528,"y":-357.6302},{"x":444.5429,"y":-357.598},{"x":444.5313,"y":-357.5664},{"x":444.5183,"y":-357.5354},{"x":444.5037,"y":-357.5051},{"x":444.4876,"y":-357.4755},{"x":444.47,"y":-357.4468},{"x":444.4511,"y":-357.419},{"x":444.4307,"y":-357.3921},{"x":444.4091,"y":-357.3664},{"x":444.3862,"y":-357.3417},{"x":444.3621,"y":-357.3182},{"x":444.3369,"y":-357.2959},{"x":444.3106,"y":-357.2749},{"x":444.2832,"y":-357.2553},{"x":444.255,"y":-357.237},{"x":444.2258,"y":-357.2202},{"x":444.1959,"y":-357.2048},{"x":444.1652,"y":-357.191},{"x":444.1339,"y":-357.1787},{"x":444.102,"y":-357.168},{"x":444.0696,"y":-357.1589},{"x":444.0367,"y":-357.1514},{"x":444.0036,"y":-357.1455},{"x":443.9702,"y":-357.1414},{"x":443.9366,"y":-357.1388},{"x":443.903,"y":-357.138}],"net":"CC1"},{"layers":["F"],"pos":[441.578,-355.253],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":441.578,"y":-355.253},"polygon":[{"x":439.253,"y":-354.578},{"x":439.2194,"y":-354.5788},{"x":439.1858,"y":-354.5814},{"x":439.1524,"y":-354.5855},{"x":439.1193,"y":-354.5914},{"x":439.0864,"y":-354.5989},{"x":439.054,"y":-354.608},{"x":439.0221,"y":-354.6187},{"x":438.9908,"y":-354.631},{"x":438.9601,"y":-354.6448},{"x":438.9302,"y":-354.6602},{"x":438.901,"y":-354.677},{"x":438.8728,"y":-354.6953},{"x":438.8454,"y":-354.7149},{"x":438.8191,"y":-354.7359},{"x":438.7939,"y":-354.7582},{"x":438.7698,"y":-354.7817},{"x":438.7469,"y":-354.8064},{"x":438.7253,"y":-354.8321},{"x":438.7049,"y":-354.859},{"x":438.686,"y":-354.8868},{"x":438.6684,"y":-354.9155},{"x":438.6523,"y":-354.9451},{"x":438.6377,"y":-354.9754},{"x":438.6247,"y":-355.0064},{"x":438.6131,"y":-355.038},{"x":438.6032,"y":-355.0702},{"x":438.5949,"y":-355.1028},{"x":438.5883,"y":-355.1358},{"x":438.5832,"y":-355.1691},{"x":438.5799,"y":-355.2026},{"x":438.5782,"y":-355.2362},{"x":438.5782,"y":-355.2698},{"x":438.5799,"y":-355.3034},{"x":438.5832,"y":-355.3369},{"x":438.5883,"y":-355.3702},{"x":438.5949,"y":-355.4032},{"x":438.6032,"y":-355.4358},{"x":438.6131,"y":-355.468},{"x":438.6247,"y":-355.4996},{"x":438.6377,"y":-355.5306},{"x":438.6523,"y":-355.5609},{"x":438.6684,"y":-355.5905},{"x":438.686,"y":-355.6192},{"x":438.7049,"y":-355.647},{"x":438.7253,"y":-355.6739},{"x":438.7469,"y":-355.6996},{"x":438.7698,"y":-355.7243},{"x":438.7939,"y":-355.7478},{"x":438.8191,"y":-355.7701},{"x":438.8454,"y":-355.7911},{"x":438.8728,"y":-355.8107},{"x":438.901,"y":-355.829},{"x":438.9302,"y":-355.8458},{"x":438.9601,"y":-355.8612},{"x":438.9908,"y":-355.875},{"x":439.0221,"y":-355.8873},{"x":439.054,"y":-355.898},{"x":439.0864,"y":-355.9071},{"x":439.1193,"y":-355.9146},{"x":439.1524,"y":-355.9205},{"x":439.1858,"y":-355.9246},{"x":439.2194,"y":-355.9272},{"x":439.253,"y":-355.928},{"x":443.903,"y":-355.928},{"x":443.9366,"y":-355.9272},{"x":443.9702,"y":-355.9246},{"x":444.0036,"y":-355.9205},{"x":444.0367,"y":-355.9146},{"x":444.0696,"y":-355.9071},{"x":444.102,"y":-355.898},{"x":444.1339,"y":-355.8873},{"x":444.1652,"y":-355.875},{"x":444.1959,"y":-355.8612},{"x":444.2258,"y":-355.8458},{"x":444.255,"y":-355.829},{"x":444.2832,"y":-355.8107},{"x":444.3106,"y":-355.7911},{"x":444.3369,"y":-355.7701},{"x":444.3621,"y":-355.7478},{"x":444.3862,"y":-355.7243},{"x":444.4091,"y":-355.6996},{"x":444.4307,"y":-355.6739},{"x":444.4511,"y":-355.647},{"x":444.47,"y":-355.6192},{"x":444.4876,"y":-355.5905},{"x":444.5037,"y":-355.5609},{"x":444.5183,"y":-355.5306},{"x":444.5313,"y":-355.4996},{"x":444.5429,"y":-355.468},{"x":444.5528,"y":-355.4358},{"x":444.5611,"y":-355.4032},{"x":444.5677,"y":-355.3702},{"x":444.5728,"y":-355.3369},{"x":444.5761,"y":-355.3034},{"x":444.5778,"y":-355.2698},{"x":444.5778,"y":-355.2362},{"x":444.5761,"y":-355.2026},{"x":444.5728,"y":-355.1691},{"x":444.5677,"y":-355.1358},{"x":444.5611,"y":-355.1028},{"x":444.5528,"y":-355.0702},{"x":444.5429,"y":-355.038},{"x":444.5313,"y":-355.0064},{"x":444.5183,"y":-354.9754},{"x":444.5037,"y":-354.9451},{"x":444.4876,"y":-354.9155},{"x":444.47,"y":-354.8868},{"x":444.4511,"y":-354.859},{"x":444.4307,"y":-354.8321},{"x":444.4091,"y":-354.8064},{"x":444.3862,"y":-354.7817},{"x":444.3621,"y":-354.7582},{"x":444.3369,"y":-354.7359},{"x":444.3106,"y":-354.7149},{"x":444.2832,"y":-354.6953},{"x":444.255,"y":-354.677},{"x":444.2258,"y":-354.6602},{"x":444.1959,"y":-354.6448},{"x":444.1652,"y":-354.631},{"x":444.1339,"y":-354.6187},{"x":444.102,"y":-354.608},{"x":444.0696,"y":-354.5989},{"x":444.0367,"y":-354.5914},{"x":444.0036,"y":-354.5855},{"x":443.9702,"y":-354.5814},{"x":443.9366,"y":-354.5788},{"x":443.903,"y":-354.578}],"net":"CC2"},{"layers":["F"],"pos":[441.578,-352.693],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":441.578,"y":-352.693},"polygon":[{"x":439.253,"y":-352.018},{"x":439.2194,"y":-352.0188},{"x":439.1858,"y":-352.0214},{"x":439.1524,"y":-352.0255},{"x":439.1193,"y":-352.0314},{"x":439.0864,"y":-352.0389},{"x":439.054,"y":-352.048},{"x":439.0221,"y":-352.0587},{"x":438.9908,"y":-352.071},{"x":438.9601,"y":-352.0848},{"x":438.9302,"y":-352.1002},{"x":438.901,"y":-352.117},{"x":438.8728,"y":-352.1353},{"x":438.8454,"y":-352.1549},{"x":438.8191,"y":-352.1759},{"x":438.7939,"y":-352.1982},{"x":438.7698,"y":-352.2217},{"x":438.7469,"y":-352.2464},{"x":438.7253,"y":-352.2721},{"x":438.7049,"y":-352.299},{"x":438.686,"y":-352.3268},{"x":438.6684,"y":-352.3555},{"x":438.6523,"y":-352.3851},{"x":438.6377,"y":-352.4154},{"x":438.6247,"y":-352.4464},{"x":438.6131,"y":-352.478},{"x":438.6032,"y":-352.5102},{"x":438.5949,"y":-352.5428},{"x":438.5883,"y":-352.5758},{"x":438.5832,"y":-352.6091},{"x":438.5799,"y":-352.6426},{"x":438.5782,"y":-352.6762},{"x":438.5782,"y":-352.7098},{"x":438.5799,"y":-352.7434},{"x":438.5832,"y":-352.7769},{"x":438.5883,"y":-352.8102},{"x":438.5949,"y":-352.8432},{"x":438.6032,"y":-352.8758},{"x":438.6131,"y":-352.908},{"x":438.6247,"y":-352.9396},{"x":438.6377,"y":-352.9706},{"x":438.6523,"y":-353.0009},{"x":438.6684,"y":-353.0305},{"x":438.686,"y":-353.0592},{"x":438.7049,"y":-353.087},{"x":438.7253,"y":-353.1139},{"x":438.7469,"y":-353.1396},{"x":438.7698,"y":-353.1643},{"x":438.7939,"y":-353.1878},{"x":438.8191,"y":-353.2101},{"x":438.8454,"y":-353.2311},{"x":438.8728,"y":-353.2507},{"x":438.901,"y":-353.269},{"x":438.9302,"y":-353.2858},{"x":438.9601,"y":-353.3012},{"x":438.9908,"y":-353.315},{"x":439.0221,"y":-353.3273},{"x":439.054,"y":-353.338},{"x":439.0864,"y":-353.3471},{"x":439.1193,"y":-353.3546},{"x":439.1524,"y":-353.3605},{"x":439.1858,"y":-353.3646},{"x":439.2194,"y":-353.3672},{"x":439.253,"y":-353.368},{"x":443.903,"y":-353.368},{"x":443.9366,"y":-353.3672},{"x":443.9702,"y":-353.3646},{"x":444.0036,"y":-353.3605},{"x":444.0367,"y":-353.3546},{"x":444.0696,"y":-353.3471},{"x":444.102,"y":-353.338},{"x":444.1339,"y":-353.3273},{"x":444.1652,"y":-353.315},{"x":444.1959,"y":-353.3012},{"x":444.2258,"y":-353.2858},{"x":444.255,"y":-353.269},{"x":444.2832,"y":-353.2507},{"x":444.3106,"y":-353.2311},{"x":444.3369,"y":-353.2101},{"x":444.3621,"y":-353.1878},{"x":444.3862,"y":-353.1643},{"x":444.4091,"y":-353.1396},{"x":444.4307,"y":-353.1139},{"x":444.4511,"y":-353.087},{"x":444.47,"y":-353.0592},{"x":444.4876,"y":-353.0305},{"x":444.5037,"y":-353.0009},{"x":444.5183,"y":-352.9706},{"x":444.5313,"y":-352.9396},{"x":444.5429,"y":-352.908},{"x":444.5528,"y":-352.8758},{"x":444.5611,"y":-352.8432},{"x":444.5677,"y":-352.8102},{"x":444.5728,"y":-352.7769},{"x":444.5761,"y":-352.7434},{"x":444.5778,"y":-352.7098},{"x":444.5778,"y":-352.6762},{"x":444.5761,"y":-352.6426},{"x":444.5728,"y":-352.6091},{"x":444.5677,"y":-352.5758},{"x":444.5611,"y":-352.5428},{"x":444.5528,"y":-352.5102},{"x":444.5429,"y":-352.478},{"x":444.5313,"y":-352.4464},{"x":444.5183,"y":-352.4154},{"x":444.5037,"y":-352.3851},{"x":444.4876,"y":-352.3555},{"x":444.47,"y":-352.3268},{"x":444.4511,"y":-352.299},{"x":444.4307,"y":-352.2721},{"x":444.4091,"y":-352.2464},{"x":444.3862,"y":-352.2217},{"x":444.3621,"y":-352.1982},{"x":444.3369,"y":-352.1759},{"x":444.3106,"y":-352.1549},{"x":444.2832,"y":-352.1353},{"x":444.255,"y":-352.117},{"x":444.2258,"y":-352.1002},{"x":444.1959,"y":-352.0848},{"x":444.1652,"y":-352.071},{"x":444.1339,"y":-352.0587},{"x":444.102,"y":-352.048},{"x":444.0696,"y":-352.0389},{"x":444.0367,"y":-352.0314},{"x":444.0036,"y":-352.0255},{"x":443.9702,"y":-352.0214},{"x":443.9366,"y":-352.0188},{"x":443.903,"y":-352.018}],"net":"$1N27574"},{"layers":["F"],"pos":[441.578,-350.133],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":441.578,"y":-350.133},"polygon":[{"x":439.253,"y":-349.458},{"x":439.2194,"y":-349.4588},{"x":439.1858,"y":-349.4614},{"x":439.1524,"y":-349.4655},{"x":439.1193,"y":-349.4714},{"x":439.0864,"y":-349.4789},{"x":439.054,"y":-349.488},{"x":439.0221,"y":-349.4987},{"x":438.9908,"y":-349.511},{"x":438.9601,"y":-349.5248},{"x":438.9302,"y":-349.5402},{"x":438.901,"y":-349.557},{"x":438.8728,"y":-349.5753},{"x":438.8454,"y":-349.5949},{"x":438.8191,"y":-349.6159},{"x":438.7939,"y":-349.6382},{"x":438.7698,"y":-349.6617},{"x":438.7469,"y":-349.6864},{"x":438.7253,"y":-349.7121},{"x":438.7049,"y":-349.739},{"x":438.686,"y":-349.7668},{"x":438.6684,"y":-349.7955},{"x":438.6523,"y":-349.8251},{"x":438.6377,"y":-349.8554},{"x":438.6247,"y":-349.8864},{"x":438.6131,"y":-349.918},{"x":438.6032,"y":-349.9502},{"x":438.5949,"y":-349.9828},{"x":438.5883,"y":-350.0158},{"x":438.5832,"y":-350.0491},{"x":438.5799,"y":-350.0826},{"x":438.5782,"y":-350.1162},{"x":438.5782,"y":-350.1498},{"x":438.5799,"y":-350.1834},{"x":438.5832,"y":-350.2169},{"x":438.5883,"y":-350.2502},{"x":438.5949,"y":-350.2832},{"x":438.6032,"y":-350.3158},{"x":438.6131,"y":-350.348},{"x":438.6247,"y":-350.3796},{"x":438.6377,"y":-350.4106},{"x":438.6523,"y":-350.4409},{"x":438.6684,"y":-350.4705},{"x":438.686,"y":-350.4992},{"x":438.7049,"y":-350.527},{"x":438.7253,"y":-350.5539},{"x":438.7469,"y":-350.5796},{"x":438.7698,"y":-350.6043},{"x":438.7939,"y":-350.6278},{"x":438.8191,"y":-350.6501},{"x":438.8454,"y":-350.6711},{"x":438.8728,"y":-350.6907},{"x":438.901,"y":-350.709},{"x":438.9302,"y":-350.7258},{"x":438.9601,"y":-350.7412},{"x":438.9908,"y":-350.755},{"x":439.0221,"y":-350.7673},{"x":439.054,"y":-350.778},{"x":439.0864,"y":-350.7871},{"x":439.1193,"y":-350.7946},{"x":439.1524,"y":-350.8005},{"x":439.1858,"y":-350.8046},{"x":439.2194,"y":-350.8072},{"x":439.253,"y":-350.808},{"x":443.903,"y":-350.808},{"x":443.9366,"y":-350.8072},{"x":443.9702,"y":-350.8046},{"x":444.0036,"y":-350.8005},{"x":444.0367,"y":-350.7946},{"x":444.0696,"y":-350.7871},{"x":444.102,"y":-350.778},{"x":444.1339,"y":-350.7673},{"x":444.1652,"y":-350.755},{"x":444.1959,"y":-350.7412},{"x":444.2258,"y":-350.7258},{"x":444.255,"y":-350.709},{"x":444.2832,"y":-350.6907},{"x":444.3106,"y":-350.6711},{"x":444.3369,"y":-350.6501},{"x":444.3621,"y":-350.6278},{"x":444.3862,"y":-350.6043},{"x":444.4091,"y":-350.5796},{"x":444.4307,"y":-350.5539},{"x":444.4511,"y":-350.527},{"x":444.47,"y":-350.4992},{"x":444.4876,"y":-350.4705},{"x":444.5037,"y":-350.4409},{"x":444.5183,"y":-350.4106},{"x":444.5313,"y":-350.3796},{"x":444.5429,"y":-350.348},{"x":444.5528,"y":-350.3158},{"x":444.5611,"y":-350.2832},{"x":444.5677,"y":-350.2502},{"x":444.5728,"y":-350.2169},{"x":444.5761,"y":-350.1834},{"x":444.5778,"y":-350.1498},{"x":444.5778,"y":-350.1162},{"x":444.5761,"y":-350.0826},{"x":444.5728,"y":-350.0491},{"x":444.5677,"y":-350.0158},{"x":444.5611,"y":-349.9828},{"x":444.5528,"y":-349.9502},{"x":444.5429,"y":-349.918},{"x":444.5313,"y":-349.8864},{"x":444.5183,"y":-349.8554},{"x":444.5037,"y":-349.8251},{"x":444.4876,"y":-349.7955},{"x":444.47,"y":-349.7668},{"x":444.4511,"y":-349.739},{"x":444.4307,"y":-349.7121},{"x":444.4091,"y":-349.6864},{"x":444.3862,"y":-349.6617},{"x":444.3621,"y":-349.6382},{"x":444.3369,"y":-349.6159},{"x":444.3106,"y":-349.5949},{"x":444.2832,"y":-349.5753},{"x":444.255,"y":-349.557},{"x":444.2258,"y":-349.5402},{"x":444.1959,"y":-349.5248},{"x":444.1652,"y":-349.511},{"x":444.1339,"y":-349.4987},{"x":444.102,"y":-349.488},{"x":444.0696,"y":-349.4789},{"x":444.0367,"y":-349.4714},{"x":444.0036,"y":-349.4655},{"x":443.9702,"y":-349.4614},{"x":443.9366,"y":-349.4588},{"x":443.903,"y":-349.458}],"net":""},{"layers":["F"],"pos":[441.578,-347.573],"size":[1.35,6],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":441.578,"y":-347.573},"polygon":[{"x":439.253,"y":-346.898},{"x":439.2194,"y":-346.8988},{"x":439.1858,"y":-346.9014},{"x":439.1524,"y":-346.9055},{"x":439.1193,"y":-346.9114},{"x":439.0864,"y":-346.9189},{"x":439.054,"y":-346.928},{"x":439.0221,"y":-346.9387},{"x":438.9908,"y":-346.951},{"x":438.9601,"y":-346.9648},{"x":438.9302,"y":-346.9802},{"x":438.901,"y":-346.997},{"x":438.8728,"y":-347.0153},{"x":438.8454,"y":-347.0349},{"x":438.8191,"y":-347.0559},{"x":438.7939,"y":-347.0782},{"x":438.7698,"y":-347.1017},{"x":438.7469,"y":-347.1264},{"x":438.7253,"y":-347.1521},{"x":438.7049,"y":-347.179},{"x":438.686,"y":-347.2068},{"x":438.6684,"y":-347.2355},{"x":438.6523,"y":-347.2651},{"x":438.6377,"y":-347.2954},{"x":438.6247,"y":-347.3264},{"x":438.6131,"y":-347.358},{"x":438.6032,"y":-347.3902},{"x":438.5949,"y":-347.4228},{"x":438.5883,"y":-347.4558},{"x":438.5832,"y":-347.4891},{"x":438.5799,"y":-347.5226},{"x":438.5782,"y":-347.5562},{"x":438.5782,"y":-347.5898},{"x":438.5799,"y":-347.6234},{"x":438.5832,"y":-347.6569},{"x":438.5883,"y":-347.6902},{"x":438.5949,"y":-347.7232},{"x":438.6032,"y":-347.7558},{"x":438.6131,"y":-347.788},{"x":438.6247,"y":-347.8196},{"x":438.6377,"y":-347.8506},{"x":438.6523,"y":-347.8809},{"x":438.6684,"y":-347.9105},{"x":438.686,"y":-347.9392},{"x":438.7049,"y":-347.967},{"x":438.7253,"y":-347.9939},{"x":438.7469,"y":-348.0196},{"x":438.7698,"y":-348.0443},{"x":438.7939,"y":-348.0678},{"x":438.8191,"y":-348.0901},{"x":438.8454,"y":-348.1111},{"x":438.8728,"y":-348.1307},{"x":438.901,"y":-348.149},{"x":438.9302,"y":-348.1658},{"x":438.9601,"y":-348.1812},{"x":438.9908,"y":-348.195},{"x":439.0221,"y":-348.2073},{"x":439.054,"y":-348.218},{"x":439.0864,"y":-348.2271},{"x":439.1193,"y":-348.2346},{"x":439.1524,"y":-348.2405},{"x":439.1858,"y":-348.2446},{"x":439.2194,"y":-348.2472},{"x":439.253,"y":-348.248},{"x":443.903,"y":-348.248},{"x":443.9366,"y":-348.2472},{"x":443.9702,"y":-348.2446},{"x":444.0036,"y":-348.2405},{"x":444.0367,"y":-348.2346},{"x":444.0696,"y":-348.2271},{"x":444.102,"y":-348.218},{"x":444.1339,"y":-348.2073},{"x":444.1652,"y":-348.195},{"x":444.1959,"y":-348.1812},{"x":444.2258,"y":-348.1658},{"x":444.255,"y":-348.149},{"x":444.2832,"y":-348.1307},{"x":444.3106,"y":-348.1111},{"x":444.3369,"y":-348.0901},{"x":444.3621,"y":-348.0678},{"x":444.3862,"y":-348.0443},{"x":444.4091,"y":-348.0196},{"x":444.4307,"y":-347.9939},{"x":444.4511,"y":-347.967},{"x":444.47,"y":-347.9392},{"x":444.4876,"y":-347.9105},{"x":444.5037,"y":-347.8809},{"x":444.5183,"y":-347.8506},{"x":444.5313,"y":-347.8196},{"x":444.5429,"y":-347.788},{"x":444.5528,"y":-347.7558},{"x":444.5611,"y":-347.7232},{"x":444.5677,"y":-347.6902},{"x":444.5728,"y":-347.6569},{"x":444.5761,"y":-347.6234},{"x":444.5778,"y":-347.5898},{"x":444.5778,"y":-347.5562},{"x":444.5761,"y":-347.5226},{"x":444.5728,"y":-347.4891},{"x":444.5677,"y":-347.4558},{"x":444.5611,"y":-347.4228},{"x":444.5528,"y":-347.3902},{"x":444.5429,"y":-347.358},{"x":444.5313,"y":-347.3264},{"x":444.5183,"y":-347.2954},{"x":444.5037,"y":-347.2651},{"x":444.4876,"y":-347.2355},{"x":444.47,"y":-347.2068},{"x":444.4511,"y":-347.179},{"x":444.4307,"y":-347.1521},{"x":444.4091,"y":-347.1264},{"x":444.3862,"y":-347.1017},{"x":444.3621,"y":-347.0782},{"x":444.3369,"y":-347.0559},{"x":444.3106,"y":-347.0349},{"x":444.2832,"y":-347.0153},{"x":444.255,"y":-346.997},{"x":444.2258,"y":-346.9802},{"x":444.1959,"y":-346.9648},{"x":444.1652,"y":-346.951},{"x":444.1339,"y":-346.9387},{"x":444.102,"y":-346.928},{"x":444.0696,"y":-346.9189},{"x":444.0367,"y":-346.9114},{"x":444.0036,"y":-346.9055},{"x":443.9702,"y":-346.9014},{"x":443.9366,"y":-346.8988},{"x":443.903,"y":-346.898}],"net":""}],"drawings":[],"layer":"F"},{"ref":"U23","center":[439.9283,-383.8939],"bbox":{"pos":[439.9283,-383.8939],"angle":180,"relpos":[-7.479700000000037,-6.100000000000023],"size":[14.95999999999998,12.599969999999985]},"pads":[{"layers":["F"],"pos":[434.418,-380.154],"size":[3.94,2.17],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":434.418,"y":-380.154},"polygon":[{"x":436.388,"y":-379.069},{"x":432.448,"y":-379.069},{"x":432.448,"y":-381.239},{"x":436.388,"y":-381.239}],"net":"$1N27581"},{"layers":["F"],"pos":[434.418,-383.894],"size":[3.94,2.17],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":434.418,"y":-383.894},"polygon":[{"x":436.388,"y":-382.809},{"x":432.448,"y":-382.809},{"x":432.448,"y":-384.979},{"x":436.388,"y":-384.979}],"net":"GND"},{"layers":["F"],"pos":[434.418,-387.634],"size":[3.94,2.17],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":434.418,"y":-387.634},"polygon":[{"x":436.388,"y":-386.549},{"x":432.448,"y":-386.549},{"x":432.448,"y":-388.719},{"x":436.388,"y":-388.719}],"net":"$1N40384"},{"layers":["F"],"pos":[445.438,-387.634],"size":[3.94,2.17],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":445.438,"y":-387.634},"polygon":[{"x":447.408,"y":-386.549},{"x":443.468,"y":-386.549},{"x":443.468,"y":-388.719},{"x":447.408,"y":-388.719}],"net":"$1N27582"},{"layers":["F"],"pos":[445.438,-383.894],"size":[3.94,2.17],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":445.438,"y":-383.894},"polygon":[{"x":447.408,"y":-382.809},{"x":443.468,"y":-382.809},{"x":443.468,"y":-384.979},{"x":447.408,"y":-384.979}],"net":"VCC"},{"layers":["F"],"pos":[445.438,-380.154],"size":[3.94,2.17],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":445.438,"y":-380.154},"polygon":[{"x":447.408,"y":-379.069},{"x":443.468,"y":-379.069},{"x":443.468,"y":-381.239},{"x":447.408,"y":-381.239}],"net":"$1N40383"}],"drawings":[],"layer":"F"},{"ref":"R12","center":[419.8771,-382.3191],"bbox":{"pos":[419.8771,-382.3191],"angle":90,"relpos":[-6.539899999999989,-3.6105999999999767],"size":[13.079799999999977,7.22120000000001]},"pads":[{"layers":["F"],"pos":[419.877,-385.729],"size":[4.4588,5.4213],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.877,"y":-385.729},"polygon":[{"x":417.1664,"y":-383.4996},{"x":417.1664,"y":-387.9584},{"x":422.5877,"y":-387.9584},{"x":422.5877,"y":-383.4996}],"net":"+5V"},{"layers":["F"],"pos":[419.877,-378.909],"size":[4.4588,5.4213],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.877,"y":-378.909},"polygon":[{"x":417.1664,"y":-376.6796},{"x":417.1664,"y":-381.1384},{"x":422.5877,"y":-381.1384},{"x":422.5877,"y":-376.6796}],"net":"$1N27581"}],"drawings":[],"layer":"F"},{"ref":"C7","center":[440.5509,-394.7223],"bbox":{"pos":[440.5509,-394.7223],"angle":180,"relpos":[-7.73070000000007,-3.5574999999999477],"size":[15.461400000000026,7.115050000000053]},"pads":[{"layers":["F"],"pos":[436.496,-394.722],"size":[5.5512,5.315],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":436.496,"y":-394.722},"polygon":[{"x":439.2716,"y":-392.0645},{"x":433.7204,"y":-392.0645},{"x":433.7204,"y":-397.3795},{"x":439.2716,"y":-397.3795}],"net":"$1N40384"},{"layers":["F"],"pos":[444.606,-394.722],"size":[5.5512,5.315],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":444.606,"y":-394.722},"polygon":[{"x":447.3816,"y":-392.0645},{"x":441.8304,"y":-392.0645},{"x":441.8304,"y":-397.3795},{"x":447.3816,"y":-397.3795}],"net":"$1N27582"}],"drawings":[],"layer":"F"},{"ref":"C8","center":[423.9972,-393.1458],"bbox":{"pos":[423.9972,-393.1458],"angle":0,"relpos":[-7.730700000000013,-3.557520000000011],"size":[15.461430000000064,7.115020000000015]},"pads":[{"layers":["F"],"pos":[428.052,-393.146],"size":[5.5512,5.315],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":428.052,"y":-393.146},"polygon":[{"x":425.2764,"y":-395.8035},{"x":430.8276,"y":-395.8035},{"x":430.8276,"y":-390.4885},{"x":425.2764,"y":-390.4885}],"net":"GND"},{"layers":["F"],"pos":[419.942,-393.146],"size":[5.5512,5.315],"angle":0,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":419.942,"y":-393.146},"polygon":[{"x":417.1664,"y":-395.8035},{"x":422.7176,"y":-395.8035},{"x":422.7176,"y":-390.4885},{"x":417.1664,"y":-390.4885}],"net":"+5V"}],"drawings":[],"layer":"F"},{"ref":"R24","center":[439.1409,-373.0671],"bbox":{"pos":[439.1409,-373.0671],"angle":0,"relpos":[-6.539899999999989,-3.6106000000000336],"size":[13.079799999999977,7.22120000000001]},"pads":[{"layers":["F"],"pos":[442.551,-373.067],"size":[4.4588,5.4213],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":442.551,"y":-373.067},"polygon":[{"x":440.3216,"y":-375.7776},{"x":444.7804,"y":-375.7776},{"x":444.7804,"y":-370.3563},{"x":440.3216,"y":-370.3563}],"net":"$1N40383"},{"layers":["F"],"pos":[435.731,-373.067],"size":[4.4588,5.4213],"angle":0,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":435.731,"y":-373.067},"polygon":[{"x":433.5016,"y":-375.7776},{"x":437.9604,"y":-375.7776},{"x":437.9604,"y":-370.3563},{"x":433.5016,"y":-370.3563}],"net":"VCC"}],"drawings":[],"layer":"F"},{"ref":"R28","center":[428.1173,-382.3191],"bbox":{"pos":[428.1173,-382.3191],"angle":90,"relpos":[-6.539899999999989,-3.6106000000000336],"size":[13.079799999999977,7.221199999999953]},"pads":[{"layers":["F"],"pos":[428.117,-385.729],"size":[4.4588,5.4213],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":428.117,"y":-385.729},"polygon":[{"x":425.4064,"y":-383.4996},{"x":425.4064,"y":-387.9584},{"x":430.8277,"y":-387.9584},{"x":430.8277,"y":-383.4996}],"net":"GND"},{"layers":["F"],"pos":[428.117,-378.909],"size":[4.4588,5.4213],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":428.117,"y":-378.909},"polygon":[{"x":425.4064,"y":-376.6796},{"x":425.4064,"y":-381.1384},{"x":430.8277,"y":-381.1384},{"x":430.8277,"y":-376.6796}],"net":"$1N27581"}],"drawings":[],"layer":"F"},{"ref":"L2","center":[440.5509,-403.5806],"bbox":{"pos":[440.5509,-403.5806],"angle":0,"relpos":[-6.40990000000005,-4.330399999999997],"size":[12.82000000000005,8.660000000000025]},"pads":[{"layers":["F"],"pos":[436.501,-403.581],"size":[4.72,8.66],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":436.501,"y":-403.581},"polygon":[{"x":434.141,"y":-407.911},{"x":438.861,"y":-407.911},{"x":438.861,"y":-399.251},{"x":434.141,"y":-399.251}],"net":"+5V"},{"layers":["F"],"pos":[444.601,-403.581],"size":[4.72,8.66],"angle":0,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":444.601,"y":-403.581},"polygon":[{"x":442.241,"y":-407.911},{"x":446.961,"y":-407.911},{"x":446.961,"y":-399.251},{"x":442.241,"y":-399.251}],"net":"$1N27582"}],"drawings":[],"layer":"F"},{"ref":"U25","center":[443.8728,-420.706],"bbox":{"pos":[443.8728,-420.706],"angle":180,"relpos":[-7.6766999999999825,-9.158699999999953],"size":[16.116899999999987,18.316399999999987]},"pads":[{"layers":["F"],"pos":[438.533,-426.612],"size":[6.2008,2.6457],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":438.533,"y":-426.612},"polygon":[{"x":441.6334,"y":-425.2891},{"x":435.4326,"y":-425.2891},{"x":435.4326,"y":-427.9348},{"x":441.6334,"y":-427.9348}],"net":"GND"},{"layers":["F"],"pos":[438.533,-414.801],"size":[6.2008,2.6457],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":438.533,"y":-414.801},"polygon":[{"x":441.6334,"y":-413.4781},{"x":435.4326,"y":-413.4781},{"x":435.4326,"y":-416.1238},{"x":441.6334,"y":-416.1238}],"net":"+5V"}],"drawings":[],"layer":"F"},{"ref":"KEY-SMD_TX-1010-X-X","center":[345.2754,-309.88],"bbox":{"pos":[345.2754,-309.88],"angle":180,"relpos":[-10.82959999999997,-9.739999999999952],"size":[21.660000000000025,14.760000000000048]},"pads":[{"layers":["F"],"pos":[351.965,-313.72],"size":[4.72,2.36],"angle":-270,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":351.965,"y":-313.72},"polygon":[{"x":353.145,"y":-316.08},{"x":353.145,"y":-311.36},{"x":350.785,"y":-311.36},{"x":350.785,"y":-316.08}],"net":"GND"},{"layers":["F"],"pos":[338.585,-313.72],"size":[4.72,2.36],"angle":-270,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":338.585,"y":-313.72},"polygon":[{"x":339.765,"y":-316.08},{"x":339.765,"y":-311.36},{"x":337.405,"y":-311.36},{"x":337.405,"y":-316.08}],"net":"SW0"},{"layers":["F"],"pos":[353.545,-306.04],"size":[5.12,4.72],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":353.545,"y":-306.04},"polygon":[{"x":351.185,"y":-303.48},{"x":351.185,"y":-308.6},{"x":355.905,"y":-308.6},{"x":355.905,"y":-303.48}],"net":"GND"},{"layers":["F"],"pos":[337.005,-306.04],"size":[5.12,4.72],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":337.005,"y":-306.04},"polygon":[{"x":334.645,"y":-303.48},{"x":334.645,"y":-308.6},{"x":339.365,"y":-308.6},{"x":339.365,"y":-303.48}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"KEY-SMD_TX-1010-X-X","center":[451.5745,-309.88],"bbox":{"pos":[451.5745,-309.88],"angle":180,"relpos":[-10.830500000000086,-9.739999999999952],"size":[21.660000000000025,14.760000000000048]},"pads":[{"layers":["F"],"pos":[458.265,-313.72],"size":[4.72,2.36],"angle":-270,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":458.265,"y":-313.72},"polygon":[{"x":459.445,"y":-316.08},{"x":459.445,"y":-311.36},{"x":457.085,"y":-311.36},{"x":457.085,"y":-316.08}],"net":"SW1"},{"layers":["F"],"pos":[444.885,-313.72],"size":[4.72,2.36],"angle":-270,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":444.885,"y":-313.72},"polygon":[{"x":446.065,"y":-316.08},{"x":446.065,"y":-311.36},{"x":443.705,"y":-311.36},{"x":443.705,"y":-316.08}],"net":"GND"},{"layers":["F"],"pos":[459.845,-306.04],"size":[5.12,4.72],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":459.845,"y":-306.04},"polygon":[{"x":457.485,"y":-303.48},{"x":457.485,"y":-308.6},{"x":462.205,"y":-308.6},{"x":462.205,"y":-303.48}],"net":"GND"},{"layers":["F"],"pos":[443.305,-306.04],"size":[5.12,4.72],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":443.305,"y":-306.04},"polygon":[{"x":440.945,"y":-303.48},{"x":440.945,"y":-308.6},{"x":445.665,"y":-308.6},{"x":445.665,"y":-303.48}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"U29","center":[398.425,-404.9585],"bbox":{"pos":[398.425,-404.9585],"angle":270,"relpos":[-14.945649999999944,-12.019550000000038],"size":[29.890300000000025,24.03910000000002]},"pads":[{"layers":["F"],"pos":[387.122,-416.475],"size":[1.4331,6.8583],"angle":-270,"pin1":1,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.122,"y":-416.475},"polygon":[{"x":384.4094,"y":-415.7584},{"x":384.3737,"y":-415.7593},{"x":384.338,"y":-415.762},{"x":384.3026,"y":-415.7664},{"x":384.2674,"y":-415.7726},{"x":384.2326,"y":-415.7806},{"x":384.1982,"y":-415.7902},{"x":384.1643,"y":-415.8016},{"x":384.131,"y":-415.8147},{"x":384.0985,"y":-415.8294},{"x":384.0667,"y":-415.8457},{"x":384.0357,"y":-415.8635},{"x":384.0057,"y":-415.8829},{"x":383.9767,"y":-415.9038},{"x":383.9488,"y":-415.9261},{"x":383.922,"y":-415.9497},{"x":383.8964,"y":-415.9746},{"x":383.8721,"y":-416.0008},{"x":383.8491,"y":-416.0282},{"x":383.8276,"y":-416.0567},{"x":383.8074,"y":-416.0862},{"x":383.7888,"y":-416.1167},{"x":383.7717,"y":-416.1481},{"x":383.7562,"y":-416.1803},{"x":383.7423,"y":-416.2132},{"x":383.7301,"y":-416.2468},{"x":383.7196,"y":-416.2809},{"x":383.7108,"y":-416.3155},{"x":383.7037,"y":-416.3506},{"x":383.6984,"y":-416.3859},{"x":383.6948,"y":-416.4214},{"x":383.693,"y":-416.4571},{"x":383.693,"y":-416.4929},{"x":383.6948,"y":-416.5286},{"x":383.6984,"y":-416.5641},{"x":383.7037,"y":-416.5994},{"x":383.7108,"y":-416.6345},{"x":383.7196,"y":-416.6691},{"x":383.7301,"y":-416.7032},{"x":383.7423,"y":-416.7368},{"x":383.7562,"y":-416.7697},{"x":383.7717,"y":-416.8019},{"x":383.7888,"y":-416.8333},{"x":383.8074,"y":-416.8638},{"x":383.8276,"y":-416.8933},{"x":383.8491,"y":-416.9218},{"x":383.8721,"y":-416.9492},{"x":383.8964,"y":-416.9754},{"x":383.922,"y":-417.0003},{"x":383.9488,"y":-417.0239},{"x":383.9767,"y":-417.0462},{"x":384.0057,"y":-417.0671},{"x":384.0357,"y":-417.0865},{"x":384.0667,"y":-417.1043},{"x":384.0985,"y":-417.1206},{"x":384.131,"y":-417.1353},{"x":384.1643,"y":-417.1484},{"x":384.1982,"y":-417.1598},{"x":384.2326,"y":-417.1694},{"x":384.2674,"y":-417.1774},{"x":384.3026,"y":-417.1836},{"x":384.338,"y":-417.188},{"x":384.3737,"y":-417.1907},{"x":384.4094,"y":-417.1916},{"x":389.8346,"y":-417.1916},{"x":389.8703,"y":-417.1907},{"x":389.906,"y":-417.188},{"x":389.9414,"y":-417.1836},{"x":389.9766,"y":-417.1774},{"x":390.0114,"y":-417.1694},{"x":390.0458,"y":-417.1598},{"x":390.0797,"y":-417.1484},{"x":390.113,"y":-417.1353},{"x":390.1455,"y":-417.1206},{"x":390.1773,"y":-417.1043},{"x":390.2083,"y":-417.0865},{"x":390.2383,"y":-417.0671},{"x":390.2673,"y":-417.0462},{"x":390.2952,"y":-417.0239},{"x":390.322,"y":-417.0003},{"x":390.3476,"y":-416.9754},{"x":390.3719,"y":-416.9492},{"x":390.3949,"y":-416.9218},{"x":390.4164,"y":-416.8933},{"x":390.4366,"y":-416.8638},{"x":390.4552,"y":-416.8333},{"x":390.4723,"y":-416.8019},{"x":390.4878,"y":-416.7697},{"x":390.5017,"y":-416.7368},{"x":390.5139,"y":-416.7032},{"x":390.5244,"y":-416.6691},{"x":390.5332,"y":-416.6345},{"x":390.5403,"y":-416.5994},{"x":390.5456,"y":-416.5641},{"x":390.5492,"y":-416.5286},{"x":390.551,"y":-416.4929},{"x":390.551,"y":-416.4571},{"x":390.5492,"y":-416.4214},{"x":390.5456,"y":-416.3859},{"x":390.5403,"y":-416.3506},{"x":390.5332,"y":-416.3155},{"x":390.5244,"y":-416.2809},{"x":390.5139,"y":-416.2468},{"x":390.5017,"y":-416.2132},{"x":390.4878,"y":-416.1803},{"x":390.4723,"y":-416.1481},{"x":390.4552,"y":-416.1167},{"x":390.4366,"y":-416.0862},{"x":390.4164,"y":-416.0567},{"x":390.3949,"y":-416.0282},{"x":390.3719,"y":-416.0008},{"x":390.3476,"y":-415.9746},{"x":390.322,"y":-415.9497},{"x":390.2952,"y":-415.9261},{"x":390.2673,"y":-415.9038},{"x":390.2383,"y":-415.8829},{"x":390.2083,"y":-415.8635},{"x":390.1773,"y":-415.8457},{"x":390.1455,"y":-415.8294},{"x":390.113,"y":-415.8147},{"x":390.0797,"y":-415.8016},{"x":390.0458,"y":-415.7902},{"x":390.0114,"y":-415.7806},{"x":389.9766,"y":-415.7726},{"x":389.9414,"y":-415.7664},{"x":389.906,"y":-415.762},{"x":389.8703,"y":-415.7593},{"x":389.8346,"y":-415.7584}],"net":"VOLP"},{"layers":["F"],"pos":[387.122,-413.916],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.122,"y":-413.916},"polygon":[{"x":384.4094,"y":-413.1994},{"x":384.3737,"y":-413.2003},{"x":384.338,"y":-413.203},{"x":384.3026,"y":-413.2074},{"x":384.2674,"y":-413.2136},{"x":384.2326,"y":-413.2216},{"x":384.1982,"y":-413.2312},{"x":384.1643,"y":-413.2426},{"x":384.131,"y":-413.2557},{"x":384.0985,"y":-413.2704},{"x":384.0667,"y":-413.2867},{"x":384.0357,"y":-413.3045},{"x":384.0057,"y":-413.3239},{"x":383.9767,"y":-413.3448},{"x":383.9488,"y":-413.3671},{"x":383.922,"y":-413.3907},{"x":383.8964,"y":-413.4156},{"x":383.8721,"y":-413.4418},{"x":383.8491,"y":-413.4692},{"x":383.8276,"y":-413.4977},{"x":383.8074,"y":-413.5272},{"x":383.7888,"y":-413.5577},{"x":383.7717,"y":-413.5891},{"x":383.7562,"y":-413.6213},{"x":383.7423,"y":-413.6542},{"x":383.7301,"y":-413.6878},{"x":383.7196,"y":-413.7219},{"x":383.7108,"y":-413.7565},{"x":383.7037,"y":-413.7916},{"x":383.6984,"y":-413.8269},{"x":383.6948,"y":-413.8624},{"x":383.693,"y":-413.8981},{"x":383.693,"y":-413.9339},{"x":383.6948,"y":-413.9696},{"x":383.6984,"y":-414.0051},{"x":383.7037,"y":-414.0404},{"x":383.7108,"y":-414.0755},{"x":383.7196,"y":-414.1101},{"x":383.7301,"y":-414.1442},{"x":383.7423,"y":-414.1778},{"x":383.7562,"y":-414.2107},{"x":383.7717,"y":-414.2429},{"x":383.7888,"y":-414.2743},{"x":383.8074,"y":-414.3048},{"x":383.8276,"y":-414.3343},{"x":383.8491,"y":-414.3628},{"x":383.8721,"y":-414.3902},{"x":383.8964,"y":-414.4164},{"x":383.922,"y":-414.4413},{"x":383.9488,"y":-414.4649},{"x":383.9767,"y":-414.4872},{"x":384.0057,"y":-414.5081},{"x":384.0357,"y":-414.5275},{"x":384.0667,"y":-414.5453},{"x":384.0985,"y":-414.5616},{"x":384.131,"y":-414.5763},{"x":384.1643,"y":-414.5894},{"x":384.1982,"y":-414.6008},{"x":384.2326,"y":-414.6104},{"x":384.2674,"y":-414.6184},{"x":384.3026,"y":-414.6246},{"x":384.338,"y":-414.629},{"x":384.3737,"y":-414.6317},{"x":384.4094,"y":-414.6326},{"x":389.8346,"y":-414.6326},{"x":389.8703,"y":-414.6317},{"x":389.906,"y":-414.629},{"x":389.9414,"y":-414.6246},{"x":389.9766,"y":-414.6184},{"x":390.0114,"y":-414.6104},{"x":390.0458,"y":-414.6008},{"x":390.0797,"y":-414.5894},{"x":390.113,"y":-414.5763},{"x":390.1455,"y":-414.5616},{"x":390.1773,"y":-414.5453},{"x":390.2083,"y":-414.5275},{"x":390.2383,"y":-414.5081},{"x":390.2673,"y":-414.4872},{"x":390.2952,"y":-414.4649},{"x":390.322,"y":-414.4413},{"x":390.3476,"y":-414.4164},{"x":390.3719,"y":-414.3902},{"x":390.3949,"y":-414.3628},{"x":390.4164,"y":-414.3343},{"x":390.4366,"y":-414.3048},{"x":390.4552,"y":-414.2743},{"x":390.4723,"y":-414.2429},{"x":390.4878,"y":-414.2107},{"x":390.5017,"y":-414.1778},{"x":390.5139,"y":-414.1442},{"x":390.5244,"y":-414.1101},{"x":390.5332,"y":-414.0755},{"x":390.5403,"y":-414.0404},{"x":390.5456,"y":-414.0051},{"x":390.5492,"y":-413.9696},{"x":390.551,"y":-413.9339},{"x":390.551,"y":-413.8981},{"x":390.5492,"y":-413.8624},{"x":390.5456,"y":-413.8269},{"x":390.5403,"y":-413.7916},{"x":390.5332,"y":-413.7565},{"x":390.5244,"y":-413.7219},{"x":390.5139,"y":-413.6878},{"x":390.5017,"y":-413.6542},{"x":390.4878,"y":-413.6213},{"x":390.4723,"y":-413.5891},{"x":390.4552,"y":-413.5577},{"x":390.4366,"y":-413.5272},{"x":390.4164,"y":-413.4977},{"x":390.3949,"y":-413.4692},{"x":390.3719,"y":-413.4418},{"x":390.3476,"y":-413.4156},{"x":390.322,"y":-413.3907},{"x":390.2952,"y":-413.3671},{"x":390.2673,"y":-413.3448},{"x":390.2383,"y":-413.3239},{"x":390.2083,"y":-413.3045},{"x":390.1773,"y":-413.2867},{"x":390.1455,"y":-413.2704},{"x":390.113,"y":-413.2557},{"x":390.0797,"y":-413.2426},{"x":390.0458,"y":-413.2312},{"x":390.0114,"y":-413.2216},{"x":389.9766,"y":-413.2136},{"x":389.9414,"y":-413.2074},{"x":389.906,"y":-413.203},{"x":389.8703,"y":-413.2003},{"x":389.8346,"y":-413.1994}],"net":""},{"layers":["F"],"pos":[387.122,-411.357],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.122,"y":-411.357},"polygon":[{"x":384.4094,"y":-410.6404},{"x":384.3737,"y":-410.6413},{"x":384.338,"y":-410.644},{"x":384.3026,"y":-410.6484},{"x":384.2674,"y":-410.6546},{"x":384.2326,"y":-410.6626},{"x":384.1982,"y":-410.6722},{"x":384.1643,"y":-410.6836},{"x":384.131,"y":-410.6967},{"x":384.0985,"y":-410.7114},{"x":384.0667,"y":-410.7277},{"x":384.0357,"y":-410.7455},{"x":384.0057,"y":-410.7649},{"x":383.9767,"y":-410.7858},{"x":383.9488,"y":-410.8081},{"x":383.922,"y":-410.8317},{"x":383.8964,"y":-410.8566},{"x":383.8721,"y":-410.8828},{"x":383.8491,"y":-410.9102},{"x":383.8276,"y":-410.9387},{"x":383.8074,"y":-410.9682},{"x":383.7888,"y":-410.9987},{"x":383.7717,"y":-411.0301},{"x":383.7562,"y":-411.0623},{"x":383.7423,"y":-411.0952},{"x":383.7301,"y":-411.1288},{"x":383.7196,"y":-411.1629},{"x":383.7108,"y":-411.1975},{"x":383.7037,"y":-411.2326},{"x":383.6984,"y":-411.2679},{"x":383.6948,"y":-411.3034},{"x":383.693,"y":-411.3391},{"x":383.693,"y":-411.3749},{"x":383.6948,"y":-411.4106},{"x":383.6984,"y":-411.4461},{"x":383.7037,"y":-411.4814},{"x":383.7108,"y":-411.5165},{"x":383.7196,"y":-411.5511},{"x":383.7301,"y":-411.5852},{"x":383.7423,"y":-411.6188},{"x":383.7562,"y":-411.6517},{"x":383.7717,"y":-411.6839},{"x":383.7888,"y":-411.7153},{"x":383.8074,"y":-411.7458},{"x":383.8276,"y":-411.7753},{"x":383.8491,"y":-411.8038},{"x":383.8721,"y":-411.8312},{"x":383.8964,"y":-411.8574},{"x":383.922,"y":-411.8823},{"x":383.9488,"y":-411.9059},{"x":383.9767,"y":-411.9282},{"x":384.0057,"y":-411.9491},{"x":384.0357,"y":-411.9685},{"x":384.0667,"y":-411.9863},{"x":384.0985,"y":-412.0026},{"x":384.131,"y":-412.0173},{"x":384.1643,"y":-412.0304},{"x":384.1982,"y":-412.0418},{"x":384.2326,"y":-412.0514},{"x":384.2674,"y":-412.0594},{"x":384.3026,"y":-412.0656},{"x":384.338,"y":-412.07},{"x":384.3737,"y":-412.0727},{"x":384.4094,"y":-412.0736},{"x":389.8346,"y":-412.0736},{"x":389.8703,"y":-412.0727},{"x":389.906,"y":-412.07},{"x":389.9414,"y":-412.0656},{"x":389.9766,"y":-412.0594},{"x":390.0114,"y":-412.0514},{"x":390.0458,"y":-412.0418},{"x":390.0797,"y":-412.0304},{"x":390.113,"y":-412.0173},{"x":390.1455,"y":-412.0026},{"x":390.1773,"y":-411.9863},{"x":390.2083,"y":-411.9685},{"x":390.2383,"y":-411.9491},{"x":390.2673,"y":-411.9282},{"x":390.2952,"y":-411.9059},{"x":390.322,"y":-411.8823},{"x":390.3476,"y":-411.8574},{"x":390.3719,"y":-411.8312},{"x":390.3949,"y":-411.8038},{"x":390.4164,"y":-411.7753},{"x":390.4366,"y":-411.7458},{"x":390.4552,"y":-411.7153},{"x":390.4723,"y":-411.6839},{"x":390.4878,"y":-411.6517},{"x":390.5017,"y":-411.6188},{"x":390.5139,"y":-411.5852},{"x":390.5244,"y":-411.5511},{"x":390.5332,"y":-411.5165},{"x":390.5403,"y":-411.4814},{"x":390.5456,"y":-411.4461},{"x":390.5492,"y":-411.4106},{"x":390.551,"y":-411.3749},{"x":390.551,"y":-411.3391},{"x":390.5492,"y":-411.3034},{"x":390.5456,"y":-411.2679},{"x":390.5403,"y":-411.2326},{"x":390.5332,"y":-411.1975},{"x":390.5244,"y":-411.1629},{"x":390.5139,"y":-411.1288},{"x":390.5017,"y":-411.0952},{"x":390.4878,"y":-411.0623},{"x":390.4723,"y":-411.0301},{"x":390.4552,"y":-410.9987},{"x":390.4366,"y":-410.9682},{"x":390.4164,"y":-410.9387},{"x":390.3949,"y":-410.9102},{"x":390.3719,"y":-410.8828},{"x":390.3476,"y":-410.8566},{"x":390.322,"y":-410.8317},{"x":390.2952,"y":-410.8081},{"x":390.2673,"y":-410.7858},{"x":390.2383,"y":-410.7649},{"x":390.2083,"y":-410.7455},{"x":390.1773,"y":-410.7277},{"x":390.1455,"y":-410.7114},{"x":390.113,"y":-410.6967},{"x":390.0797,"y":-410.6836},{"x":390.0458,"y":-410.6722},{"x":390.0114,"y":-410.6626},{"x":389.9766,"y":-410.6546},{"x":389.9414,"y":-410.6484},{"x":389.906,"y":-410.644},{"x":389.8703,"y":-410.6413},{"x":389.8346,"y":-410.6404}],"net":""},{"layers":["F"],"pos":[387.122,-408.798],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.122,"y":-408.798},"polygon":[{"x":384.4094,"y":-408.0814},{"x":384.3737,"y":-408.0823},{"x":384.338,"y":-408.085},{"x":384.3026,"y":-408.0894},{"x":384.2674,"y":-408.0956},{"x":384.2326,"y":-408.1036},{"x":384.1982,"y":-408.1132},{"x":384.1643,"y":-408.1246},{"x":384.131,"y":-408.1377},{"x":384.0985,"y":-408.1524},{"x":384.0667,"y":-408.1687},{"x":384.0357,"y":-408.1865},{"x":384.0057,"y":-408.2059},{"x":383.9767,"y":-408.2268},{"x":383.9488,"y":-408.2491},{"x":383.922,"y":-408.2727},{"x":383.8964,"y":-408.2976},{"x":383.8721,"y":-408.3238},{"x":383.8491,"y":-408.3512},{"x":383.8276,"y":-408.3797},{"x":383.8074,"y":-408.4092},{"x":383.7888,"y":-408.4397},{"x":383.7717,"y":-408.4711},{"x":383.7562,"y":-408.5033},{"x":383.7423,"y":-408.5362},{"x":383.7301,"y":-408.5698},{"x":383.7196,"y":-408.6039},{"x":383.7108,"y":-408.6385},{"x":383.7037,"y":-408.6736},{"x":383.6984,"y":-408.7089},{"x":383.6948,"y":-408.7444},{"x":383.693,"y":-408.7801},{"x":383.693,"y":-408.8159},{"x":383.6948,"y":-408.8516},{"x":383.6984,"y":-408.8871},{"x":383.7037,"y":-408.9224},{"x":383.7108,"y":-408.9575},{"x":383.7196,"y":-408.9921},{"x":383.7301,"y":-409.0262},{"x":383.7423,"y":-409.0598},{"x":383.7562,"y":-409.0927},{"x":383.7717,"y":-409.1249},{"x":383.7888,"y":-409.1563},{"x":383.8074,"y":-409.1868},{"x":383.8276,"y":-409.2163},{"x":383.8491,"y":-409.2448},{"x":383.8721,"y":-409.2722},{"x":383.8964,"y":-409.2984},{"x":383.922,"y":-409.3233},{"x":383.9488,"y":-409.3469},{"x":383.9767,"y":-409.3692},{"x":384.0057,"y":-409.3901},{"x":384.0357,"y":-409.4095},{"x":384.0667,"y":-409.4273},{"x":384.0985,"y":-409.4436},{"x":384.131,"y":-409.4583},{"x":384.1643,"y":-409.4714},{"x":384.1982,"y":-409.4828},{"x":384.2326,"y":-409.4924},{"x":384.2674,"y":-409.5004},{"x":384.3026,"y":-409.5066},{"x":384.338,"y":-409.511},{"x":384.3737,"y":-409.5137},{"x":384.4094,"y":-409.5146},{"x":389.8346,"y":-409.5146},{"x":389.8703,"y":-409.5137},{"x":389.906,"y":-409.511},{"x":389.9414,"y":-409.5066},{"x":389.9766,"y":-409.5004},{"x":390.0114,"y":-409.4924},{"x":390.0458,"y":-409.4828},{"x":390.0797,"y":-409.4714},{"x":390.113,"y":-409.4583},{"x":390.1455,"y":-409.4436},{"x":390.1773,"y":-409.4273},{"x":390.2083,"y":-409.4095},{"x":390.2383,"y":-409.3901},{"x":390.2673,"y":-409.3692},{"x":390.2952,"y":-409.3469},{"x":390.322,"y":-409.3233},{"x":390.3476,"y":-409.2984},{"x":390.3719,"y":-409.2722},{"x":390.3949,"y":-409.2448},{"x":390.4164,"y":-409.2163},{"x":390.4366,"y":-409.1868},{"x":390.4552,"y":-409.1563},{"x":390.4723,"y":-409.1249},{"x":390.4878,"y":-409.0927},{"x":390.5017,"y":-409.0598},{"x":390.5139,"y":-409.0262},{"x":390.5244,"y":-408.9921},{"x":390.5332,"y":-408.9575},{"x":390.5403,"y":-408.9224},{"x":390.5456,"y":-408.8871},{"x":390.5492,"y":-408.8516},{"x":390.551,"y":-408.8159},{"x":390.551,"y":-408.7801},{"x":390.5492,"y":-408.7444},{"x":390.5456,"y":-408.7089},{"x":390.5403,"y":-408.6736},{"x":390.5332,"y":-408.6385},{"x":390.5244,"y":-408.6039},{"x":390.5139,"y":-408.5698},{"x":390.5017,"y":-408.5362},{"x":390.4878,"y":-408.5033},{"x":390.4723,"y":-408.4711},{"x":390.4552,"y":-408.4397},{"x":390.4366,"y":-408.4092},{"x":390.4164,"y":-408.3797},{"x":390.3949,"y":-408.3512},{"x":390.3719,"y":-408.3238},{"x":390.3476,"y":-408.2976},{"x":390.322,"y":-408.2727},{"x":390.2952,"y":-408.2491},{"x":390.2673,"y":-408.2268},{"x":390.2383,"y":-408.2059},{"x":390.2083,"y":-408.1865},{"x":390.1773,"y":-408.1687},{"x":390.1455,"y":-408.1524},{"x":390.113,"y":-408.1377},{"x":390.0797,"y":-408.1246},{"x":390.0458,"y":-408.1132},{"x":390.0114,"y":-408.1036},{"x":389.9766,"y":-408.0956},{"x":389.9414,"y":-408.0894},{"x":389.906,"y":-408.085},{"x":389.8703,"y":-408.0823},{"x":389.8346,"y":-408.0814}],"net":"GND"},{"layers":["F"],"pos":[387.122,-406.238],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.122,"y":-406.238},"polygon":[{"x":384.4094,"y":-405.5214},{"x":384.3737,"y":-405.5223},{"x":384.338,"y":-405.525},{"x":384.3026,"y":-405.5294},{"x":384.2674,"y":-405.5356},{"x":384.2326,"y":-405.5436},{"x":384.1982,"y":-405.5532},{"x":384.1643,"y":-405.5646},{"x":384.131,"y":-405.5777},{"x":384.0985,"y":-405.5924},{"x":384.0667,"y":-405.6087},{"x":384.0357,"y":-405.6265},{"x":384.0057,"y":-405.6459},{"x":383.9767,"y":-405.6668},{"x":383.9488,"y":-405.6891},{"x":383.922,"y":-405.7127},{"x":383.8964,"y":-405.7376},{"x":383.8721,"y":-405.7638},{"x":383.8491,"y":-405.7912},{"x":383.8276,"y":-405.8197},{"x":383.8074,"y":-405.8492},{"x":383.7888,"y":-405.8797},{"x":383.7717,"y":-405.9111},{"x":383.7562,"y":-405.9433},{"x":383.7423,"y":-405.9762},{"x":383.7301,"y":-406.0098},{"x":383.7196,"y":-406.0439},{"x":383.7108,"y":-406.0785},{"x":383.7037,"y":-406.1136},{"x":383.6984,"y":-406.1489},{"x":383.6948,"y":-406.1844},{"x":383.693,"y":-406.2201},{"x":383.693,"y":-406.2559},{"x":383.6948,"y":-406.2916},{"x":383.6984,"y":-406.3271},{"x":383.7037,"y":-406.3624},{"x":383.7108,"y":-406.3975},{"x":383.7196,"y":-406.4321},{"x":383.7301,"y":-406.4662},{"x":383.7423,"y":-406.4998},{"x":383.7562,"y":-406.5327},{"x":383.7717,"y":-406.5649},{"x":383.7888,"y":-406.5963},{"x":383.8074,"y":-406.6268},{"x":383.8276,"y":-406.6563},{"x":383.8491,"y":-406.6848},{"x":383.8721,"y":-406.7122},{"x":383.8964,"y":-406.7384},{"x":383.922,"y":-406.7633},{"x":383.9488,"y":-406.7869},{"x":383.9767,"y":-406.8092},{"x":384.0057,"y":-406.8301},{"x":384.0357,"y":-406.8495},{"x":384.0667,"y":-406.8673},{"x":384.0985,"y":-406.8836},{"x":384.131,"y":-406.8983},{"x":384.1643,"y":-406.9114},{"x":384.1982,"y":-406.9228},{"x":384.2326,"y":-406.9324},{"x":384.2674,"y":-406.9404},{"x":384.3026,"y":-406.9466},{"x":384.338,"y":-406.951},{"x":384.3737,"y":-406.9537},{"x":384.4094,"y":-406.9546},{"x":389.8346,"y":-406.9546},{"x":389.8703,"y":-406.9537},{"x":389.906,"y":-406.951},{"x":389.9414,"y":-406.9466},{"x":389.9766,"y":-406.9404},{"x":390.0114,"y":-406.9324},{"x":390.0458,"y":-406.9228},{"x":390.0797,"y":-406.9114},{"x":390.113,"y":-406.8983},{"x":390.1455,"y":-406.8836},{"x":390.1773,"y":-406.8673},{"x":390.2083,"y":-406.8495},{"x":390.2383,"y":-406.8301},{"x":390.2673,"y":-406.8092},{"x":390.2952,"y":-406.7869},{"x":390.322,"y":-406.7633},{"x":390.3476,"y":-406.7384},{"x":390.3719,"y":-406.7122},{"x":390.3949,"y":-406.6848},{"x":390.4164,"y":-406.6563},{"x":390.4366,"y":-406.6268},{"x":390.4552,"y":-406.5963},{"x":390.4723,"y":-406.5649},{"x":390.4878,"y":-406.5327},{"x":390.5017,"y":-406.4998},{"x":390.5139,"y":-406.4662},{"x":390.5244,"y":-406.4321},{"x":390.5332,"y":-406.3975},{"x":390.5403,"y":-406.3624},{"x":390.5456,"y":-406.3271},{"x":390.5492,"y":-406.2916},{"x":390.551,"y":-406.2559},{"x":390.551,"y":-406.2201},{"x":390.5492,"y":-406.1844},{"x":390.5456,"y":-406.1489},{"x":390.5403,"y":-406.1136},{"x":390.5332,"y":-406.0785},{"x":390.5244,"y":-406.0439},{"x":390.5139,"y":-406.0098},{"x":390.5017,"y":-405.9762},{"x":390.4878,"y":-405.9433},{"x":390.4723,"y":-405.9111},{"x":390.4552,"y":-405.8797},{"x":390.4366,"y":-405.8492},{"x":390.4164,"y":-405.8197},{"x":390.3949,"y":-405.7912},{"x":390.3719,"y":-405.7638},{"x":390.3476,"y":-405.7376},{"x":390.322,"y":-405.7127},{"x":390.2952,"y":-405.6891},{"x":390.2673,"y":-405.6668},{"x":390.2383,"y":-405.6459},{"x":390.2083,"y":-405.6265},{"x":390.1773,"y":-405.6087},{"x":390.1455,"y":-405.5924},{"x":390.113,"y":-405.5777},{"x":390.0797,"y":-405.5646},{"x":390.0458,"y":-405.5532},{"x":390.0114,"y":-405.5436},{"x":389.9766,"y":-405.5356},{"x":389.9414,"y":-405.5294},{"x":389.906,"y":-405.525},{"x":389.8703,"y":-405.5223},{"x":389.8346,"y":-405.5214}],"net":"+1.5V"},{"layers":["F"],"pos":[387.122,-403.679],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.122,"y":-403.679},"polygon":[{"x":384.4094,"y":-402.9624},{"x":384.3737,"y":-402.9633},{"x":384.338,"y":-402.966},{"x":384.3026,"y":-402.9704},{"x":384.2674,"y":-402.9766},{"x":384.2326,"y":-402.9846},{"x":384.1982,"y":-402.9942},{"x":384.1643,"y":-403.0056},{"x":384.131,"y":-403.0187},{"x":384.0985,"y":-403.0334},{"x":384.0667,"y":-403.0497},{"x":384.0357,"y":-403.0675},{"x":384.0057,"y":-403.0869},{"x":383.9767,"y":-403.1078},{"x":383.9488,"y":-403.1301},{"x":383.922,"y":-403.1537},{"x":383.8964,"y":-403.1786},{"x":383.8721,"y":-403.2048},{"x":383.8491,"y":-403.2322},{"x":383.8276,"y":-403.2607},{"x":383.8074,"y":-403.2902},{"x":383.7888,"y":-403.3207},{"x":383.7717,"y":-403.3521},{"x":383.7562,"y":-403.3843},{"x":383.7423,"y":-403.4172},{"x":383.7301,"y":-403.4508},{"x":383.7196,"y":-403.4849},{"x":383.7108,"y":-403.5195},{"x":383.7037,"y":-403.5546},{"x":383.6984,"y":-403.5899},{"x":383.6948,"y":-403.6254},{"x":383.693,"y":-403.6611},{"x":383.693,"y":-403.6969},{"x":383.6948,"y":-403.7326},{"x":383.6984,"y":-403.7681},{"x":383.7037,"y":-403.8034},{"x":383.7108,"y":-403.8385},{"x":383.7196,"y":-403.8731},{"x":383.7301,"y":-403.9072},{"x":383.7423,"y":-403.9408},{"x":383.7562,"y":-403.9737},{"x":383.7717,"y":-404.0059},{"x":383.7888,"y":-404.0373},{"x":383.8074,"y":-404.0678},{"x":383.8276,"y":-404.0973},{"x":383.8491,"y":-404.1258},{"x":383.8721,"y":-404.1532},{"x":383.8964,"y":-404.1794},{"x":383.922,"y":-404.2043},{"x":383.9488,"y":-404.2279},{"x":383.9767,"y":-404.2502},{"x":384.0057,"y":-404.2711},{"x":384.0357,"y":-404.2905},{"x":384.0667,"y":-404.3083},{"x":384.0985,"y":-404.3246},{"x":384.131,"y":-404.3393},{"x":384.1643,"y":-404.3524},{"x":384.1982,"y":-404.3638},{"x":384.2326,"y":-404.3734},{"x":384.2674,"y":-404.3814},{"x":384.3026,"y":-404.3876},{"x":384.338,"y":-404.392},{"x":384.3737,"y":-404.3947},{"x":384.4094,"y":-404.3956},{"x":389.8346,"y":-404.3956},{"x":389.8703,"y":-404.3947},{"x":389.906,"y":-404.392},{"x":389.9414,"y":-404.3876},{"x":389.9766,"y":-404.3814},{"x":390.0114,"y":-404.3734},{"x":390.0458,"y":-404.3638},{"x":390.0797,"y":-404.3524},{"x":390.113,"y":-404.3393},{"x":390.1455,"y":-404.3246},{"x":390.1773,"y":-404.3083},{"x":390.2083,"y":-404.2905},{"x":390.2383,"y":-404.2711},{"x":390.2673,"y":-404.2502},{"x":390.2952,"y":-404.2279},{"x":390.322,"y":-404.2043},{"x":390.3476,"y":-404.1794},{"x":390.3719,"y":-404.1532},{"x":390.3949,"y":-404.1258},{"x":390.4164,"y":-404.0973},{"x":390.4366,"y":-404.0678},{"x":390.4552,"y":-404.0373},{"x":390.4723,"y":-404.0059},{"x":390.4878,"y":-403.9737},{"x":390.5017,"y":-403.9408},{"x":390.5139,"y":-403.9072},{"x":390.5244,"y":-403.8731},{"x":390.5332,"y":-403.8385},{"x":390.5403,"y":-403.8034},{"x":390.5456,"y":-403.7681},{"x":390.5492,"y":-403.7326},{"x":390.551,"y":-403.6969},{"x":390.551,"y":-403.6611},{"x":390.5492,"y":-403.6254},{"x":390.5456,"y":-403.5899},{"x":390.5403,"y":-403.5546},{"x":390.5332,"y":-403.5195},{"x":390.5244,"y":-403.4849},{"x":390.5139,"y":-403.4508},{"x":390.5017,"y":-403.4172},{"x":390.4878,"y":-403.3843},{"x":390.4723,"y":-403.3521},{"x":390.4552,"y":-403.3207},{"x":390.4366,"y":-403.2902},{"x":390.4164,"y":-403.2607},{"x":390.3949,"y":-403.2322},{"x":390.3719,"y":-403.2048},{"x":390.3476,"y":-403.1786},{"x":390.322,"y":-403.1537},{"x":390.2952,"y":-403.1301},{"x":390.2673,"y":-403.1078},{"x":390.2383,"y":-403.0869},{"x":390.2083,"y":-403.0675},{"x":390.1773,"y":-403.0497},{"x":390.1455,"y":-403.0334},{"x":390.113,"y":-403.0187},{"x":390.0797,"y":-403.0056},{"x":390.0458,"y":-402.9942},{"x":390.0114,"y":-402.9846},{"x":389.9766,"y":-402.9766},{"x":389.9414,"y":-402.9704},{"x":389.906,"y":-402.966},{"x":389.8703,"y":-402.9633},{"x":389.8346,"y":-402.9624}],"net":"+3.3V"},{"layers":["F"],"pos":[387.122,-401.12],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.122,"y":-401.12},"polygon":[{"x":384.4094,"y":-400.4034},{"x":384.3737,"y":-400.4043},{"x":384.338,"y":-400.407},{"x":384.3026,"y":-400.4114},{"x":384.2674,"y":-400.4176},{"x":384.2326,"y":-400.4256},{"x":384.1982,"y":-400.4352},{"x":384.1643,"y":-400.4466},{"x":384.131,"y":-400.4597},{"x":384.0985,"y":-400.4744},{"x":384.0667,"y":-400.4907},{"x":384.0357,"y":-400.5085},{"x":384.0057,"y":-400.5279},{"x":383.9767,"y":-400.5488},{"x":383.9488,"y":-400.5711},{"x":383.922,"y":-400.5947},{"x":383.8964,"y":-400.6196},{"x":383.8721,"y":-400.6458},{"x":383.8491,"y":-400.6732},{"x":383.8276,"y":-400.7017},{"x":383.8074,"y":-400.7312},{"x":383.7888,"y":-400.7617},{"x":383.7717,"y":-400.7931},{"x":383.7562,"y":-400.8253},{"x":383.7423,"y":-400.8582},{"x":383.7301,"y":-400.8918},{"x":383.7196,"y":-400.9259},{"x":383.7108,"y":-400.9605},{"x":383.7037,"y":-400.9956},{"x":383.6984,"y":-401.0309},{"x":383.6948,"y":-401.0664},{"x":383.693,"y":-401.1021},{"x":383.693,"y":-401.1379},{"x":383.6948,"y":-401.1736},{"x":383.6984,"y":-401.2091},{"x":383.7037,"y":-401.2444},{"x":383.7108,"y":-401.2795},{"x":383.7196,"y":-401.3141},{"x":383.7301,"y":-401.3482},{"x":383.7423,"y":-401.3818},{"x":383.7562,"y":-401.4147},{"x":383.7717,"y":-401.4469},{"x":383.7888,"y":-401.4783},{"x":383.8074,"y":-401.5088},{"x":383.8276,"y":-401.5383},{"x":383.8491,"y":-401.5668},{"x":383.8721,"y":-401.5942},{"x":383.8964,"y":-401.6204},{"x":383.922,"y":-401.6453},{"x":383.9488,"y":-401.6689},{"x":383.9767,"y":-401.6912},{"x":384.0057,"y":-401.7121},{"x":384.0357,"y":-401.7315},{"x":384.0667,"y":-401.7493},{"x":384.0985,"y":-401.7656},{"x":384.131,"y":-401.7803},{"x":384.1643,"y":-401.7934},{"x":384.1982,"y":-401.8048},{"x":384.2326,"y":-401.8144},{"x":384.2674,"y":-401.8224},{"x":384.3026,"y":-401.8286},{"x":384.338,"y":-401.833},{"x":384.3737,"y":-401.8357},{"x":384.4094,"y":-401.8366},{"x":389.8346,"y":-401.8366},{"x":389.8703,"y":-401.8357},{"x":389.906,"y":-401.833},{"x":389.9414,"y":-401.8286},{"x":389.9766,"y":-401.8224},{"x":390.0114,"y":-401.8144},{"x":390.0458,"y":-401.8048},{"x":390.0797,"y":-401.7934},{"x":390.113,"y":-401.7803},{"x":390.1455,"y":-401.7656},{"x":390.1773,"y":-401.7493},{"x":390.2083,"y":-401.7315},{"x":390.2383,"y":-401.7121},{"x":390.2673,"y":-401.6912},{"x":390.2952,"y":-401.6689},{"x":390.322,"y":-401.6453},{"x":390.3476,"y":-401.6204},{"x":390.3719,"y":-401.5942},{"x":390.3949,"y":-401.5668},{"x":390.4164,"y":-401.5383},{"x":390.4366,"y":-401.5088},{"x":390.4552,"y":-401.4783},{"x":390.4723,"y":-401.4469},{"x":390.4878,"y":-401.4147},{"x":390.5017,"y":-401.3818},{"x":390.5139,"y":-401.3482},{"x":390.5244,"y":-401.3141},{"x":390.5332,"y":-401.2795},{"x":390.5403,"y":-401.2444},{"x":390.5456,"y":-401.2091},{"x":390.5492,"y":-401.1736},{"x":390.551,"y":-401.1379},{"x":390.551,"y":-401.1021},{"x":390.5492,"y":-401.0664},{"x":390.5456,"y":-401.0309},{"x":390.5403,"y":-400.9956},{"x":390.5332,"y":-400.9605},{"x":390.5244,"y":-400.9259},{"x":390.5139,"y":-400.8918},{"x":390.5017,"y":-400.8582},{"x":390.4878,"y":-400.8253},{"x":390.4723,"y":-400.7931},{"x":390.4552,"y":-400.7617},{"x":390.4366,"y":-400.7312},{"x":390.4164,"y":-400.7017},{"x":390.3949,"y":-400.6732},{"x":390.3719,"y":-400.6458},{"x":390.3476,"y":-400.6196},{"x":390.322,"y":-400.5947},{"x":390.2952,"y":-400.5711},{"x":390.2673,"y":-400.5488},{"x":390.2383,"y":-400.5279},{"x":390.2083,"y":-400.5085},{"x":390.1773,"y":-400.4907},{"x":390.1455,"y":-400.4744},{"x":390.113,"y":-400.4597},{"x":390.0797,"y":-400.4466},{"x":390.0458,"y":-400.4352},{"x":390.0114,"y":-400.4256},{"x":389.9766,"y":-400.4176},{"x":389.9414,"y":-400.4114},{"x":389.906,"y":-400.407},{"x":389.8703,"y":-400.4043},{"x":389.8346,"y":-400.4034}],"net":""},{"layers":["F"],"pos":[387.122,-398.561],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.122,"y":-398.561},"polygon":[{"x":384.4094,"y":-397.8444},{"x":384.3737,"y":-397.8453},{"x":384.338,"y":-397.848},{"x":384.3026,"y":-397.8524},{"x":384.2674,"y":-397.8586},{"x":384.2326,"y":-397.8666},{"x":384.1982,"y":-397.8762},{"x":384.1643,"y":-397.8876},{"x":384.131,"y":-397.9007},{"x":384.0985,"y":-397.9154},{"x":384.0667,"y":-397.9317},{"x":384.0357,"y":-397.9495},{"x":384.0057,"y":-397.9689},{"x":383.9767,"y":-397.9898},{"x":383.9488,"y":-398.0121},{"x":383.922,"y":-398.0357},{"x":383.8964,"y":-398.0606},{"x":383.8721,"y":-398.0868},{"x":383.8491,"y":-398.1142},{"x":383.8276,"y":-398.1427},{"x":383.8074,"y":-398.1722},{"x":383.7888,"y":-398.2027},{"x":383.7717,"y":-398.2341},{"x":383.7562,"y":-398.2663},{"x":383.7423,"y":-398.2992},{"x":383.7301,"y":-398.3328},{"x":383.7196,"y":-398.3669},{"x":383.7108,"y":-398.4015},{"x":383.7037,"y":-398.4366},{"x":383.6984,"y":-398.4719},{"x":383.6948,"y":-398.5074},{"x":383.693,"y":-398.5431},{"x":383.693,"y":-398.5789},{"x":383.6948,"y":-398.6146},{"x":383.6984,"y":-398.6501},{"x":383.7037,"y":-398.6854},{"x":383.7108,"y":-398.7205},{"x":383.7196,"y":-398.7551},{"x":383.7301,"y":-398.7892},{"x":383.7423,"y":-398.8228},{"x":383.7562,"y":-398.8557},{"x":383.7717,"y":-398.8879},{"x":383.7888,"y":-398.9193},{"x":383.8074,"y":-398.9498},{"x":383.8276,"y":-398.9793},{"x":383.8491,"y":-399.0078},{"x":383.8721,"y":-399.0352},{"x":383.8964,"y":-399.0614},{"x":383.922,"y":-399.0863},{"x":383.9488,"y":-399.1099},{"x":383.9767,"y":-399.1322},{"x":384.0057,"y":-399.1531},{"x":384.0357,"y":-399.1725},{"x":384.0667,"y":-399.1903},{"x":384.0985,"y":-399.2066},{"x":384.131,"y":-399.2213},{"x":384.1643,"y":-399.2344},{"x":384.1982,"y":-399.2458},{"x":384.2326,"y":-399.2554},{"x":384.2674,"y":-399.2634},{"x":384.3026,"y":-399.2696},{"x":384.338,"y":-399.274},{"x":384.3737,"y":-399.2767},{"x":384.4094,"y":-399.2776},{"x":389.8346,"y":-399.2776},{"x":389.8703,"y":-399.2767},{"x":389.906,"y":-399.274},{"x":389.9414,"y":-399.2696},{"x":389.9766,"y":-399.2634},{"x":390.0114,"y":-399.2554},{"x":390.0458,"y":-399.2458},{"x":390.0797,"y":-399.2344},{"x":390.113,"y":-399.2213},{"x":390.1455,"y":-399.2066},{"x":390.1773,"y":-399.1903},{"x":390.2083,"y":-399.1725},{"x":390.2383,"y":-399.1531},{"x":390.2673,"y":-399.1322},{"x":390.2952,"y":-399.1099},{"x":390.322,"y":-399.0863},{"x":390.3476,"y":-399.0614},{"x":390.3719,"y":-399.0352},{"x":390.3949,"y":-399.0078},{"x":390.4164,"y":-398.9793},{"x":390.4366,"y":-398.9498},{"x":390.4552,"y":-398.9193},{"x":390.4723,"y":-398.8879},{"x":390.4878,"y":-398.8557},{"x":390.5017,"y":-398.8228},{"x":390.5139,"y":-398.7892},{"x":390.5244,"y":-398.7551},{"x":390.5332,"y":-398.7205},{"x":390.5403,"y":-398.6854},{"x":390.5456,"y":-398.6501},{"x":390.5492,"y":-398.6146},{"x":390.551,"y":-398.5789},{"x":390.551,"y":-398.5431},{"x":390.5492,"y":-398.5074},{"x":390.5456,"y":-398.4719},{"x":390.5403,"y":-398.4366},{"x":390.5332,"y":-398.4015},{"x":390.5244,"y":-398.3669},{"x":390.5139,"y":-398.3328},{"x":390.5017,"y":-398.2992},{"x":390.4878,"y":-398.2663},{"x":390.4723,"y":-398.2341},{"x":390.4552,"y":-398.2027},{"x":390.4366,"y":-398.1722},{"x":390.4164,"y":-398.1427},{"x":390.3949,"y":-398.1142},{"x":390.3719,"y":-398.0868},{"x":390.3476,"y":-398.0606},{"x":390.322,"y":-398.0357},{"x":390.2952,"y":-398.0121},{"x":390.2673,"y":-397.9898},{"x":390.2383,"y":-397.9689},{"x":390.2083,"y":-397.9495},{"x":390.1773,"y":-397.9317},{"x":390.1455,"y":-397.9154},{"x":390.113,"y":-397.9007},{"x":390.0797,"y":-397.8876},{"x":390.0458,"y":-397.8762},{"x":390.0114,"y":-397.8666},{"x":389.9766,"y":-397.8586},{"x":389.9414,"y":-397.8524},{"x":389.906,"y":-397.848},{"x":389.8703,"y":-397.8453},{"x":389.8346,"y":-397.8444}],"net":"+3.3V"},{"layers":["F"],"pos":[387.122,-396.002],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.122,"y":-396.002},"polygon":[{"x":384.4094,"y":-395.2854},{"x":384.3737,"y":-395.2863},{"x":384.338,"y":-395.289},{"x":384.3026,"y":-395.2934},{"x":384.2674,"y":-395.2996},{"x":384.2326,"y":-395.3076},{"x":384.1982,"y":-395.3172},{"x":384.1643,"y":-395.3286},{"x":384.131,"y":-395.3417},{"x":384.0985,"y":-395.3564},{"x":384.0667,"y":-395.3727},{"x":384.0357,"y":-395.3905},{"x":384.0057,"y":-395.4099},{"x":383.9767,"y":-395.4308},{"x":383.9488,"y":-395.4531},{"x":383.922,"y":-395.4767},{"x":383.8964,"y":-395.5016},{"x":383.8721,"y":-395.5278},{"x":383.8491,"y":-395.5552},{"x":383.8276,"y":-395.5837},{"x":383.8074,"y":-395.6132},{"x":383.7888,"y":-395.6437},{"x":383.7717,"y":-395.6751},{"x":383.7562,"y":-395.7073},{"x":383.7423,"y":-395.7402},{"x":383.7301,"y":-395.7738},{"x":383.7196,"y":-395.8079},{"x":383.7108,"y":-395.8425},{"x":383.7037,"y":-395.8776},{"x":383.6984,"y":-395.9129},{"x":383.6948,"y":-395.9484},{"x":383.693,"y":-395.9841},{"x":383.693,"y":-396.0199},{"x":383.6948,"y":-396.0556},{"x":383.6984,"y":-396.0911},{"x":383.7037,"y":-396.1264},{"x":383.7108,"y":-396.1615},{"x":383.7196,"y":-396.1961},{"x":383.7301,"y":-396.2302},{"x":383.7423,"y":-396.2638},{"x":383.7562,"y":-396.2967},{"x":383.7717,"y":-396.3289},{"x":383.7888,"y":-396.3603},{"x":383.8074,"y":-396.3908},{"x":383.8276,"y":-396.4203},{"x":383.8491,"y":-396.4488},{"x":383.8721,"y":-396.4762},{"x":383.8964,"y":-396.5024},{"x":383.922,"y":-396.5273},{"x":383.9488,"y":-396.5509},{"x":383.9767,"y":-396.5732},{"x":384.0057,"y":-396.5941},{"x":384.0357,"y":-396.6135},{"x":384.0667,"y":-396.6313},{"x":384.0985,"y":-396.6476},{"x":384.131,"y":-396.6623},{"x":384.1643,"y":-396.6754},{"x":384.1982,"y":-396.6868},{"x":384.2326,"y":-396.6964},{"x":384.2674,"y":-396.7044},{"x":384.3026,"y":-396.7106},{"x":384.338,"y":-396.715},{"x":384.3737,"y":-396.7177},{"x":384.4094,"y":-396.7186},{"x":389.8346,"y":-396.7186},{"x":389.8703,"y":-396.7177},{"x":389.906,"y":-396.715},{"x":389.9414,"y":-396.7106},{"x":389.9766,"y":-396.7044},{"x":390.0114,"y":-396.6964},{"x":390.0458,"y":-396.6868},{"x":390.0797,"y":-396.6754},{"x":390.113,"y":-396.6623},{"x":390.1455,"y":-396.6476},{"x":390.1773,"y":-396.6313},{"x":390.2083,"y":-396.6135},{"x":390.2383,"y":-396.5941},{"x":390.2673,"y":-396.5732},{"x":390.2952,"y":-396.5509},{"x":390.322,"y":-396.5273},{"x":390.3476,"y":-396.5024},{"x":390.3719,"y":-396.4762},{"x":390.3949,"y":-396.4488},{"x":390.4164,"y":-396.4203},{"x":390.4366,"y":-396.3908},{"x":390.4552,"y":-396.3603},{"x":390.4723,"y":-396.3289},{"x":390.4878,"y":-396.2967},{"x":390.5017,"y":-396.2638},{"x":390.5139,"y":-396.2302},{"x":390.5244,"y":-396.1961},{"x":390.5332,"y":-396.1615},{"x":390.5403,"y":-396.1264},{"x":390.5456,"y":-396.0911},{"x":390.5492,"y":-396.0556},{"x":390.551,"y":-396.0199},{"x":390.551,"y":-395.9841},{"x":390.5492,"y":-395.9484},{"x":390.5456,"y":-395.9129},{"x":390.5403,"y":-395.8776},{"x":390.5332,"y":-395.8425},{"x":390.5244,"y":-395.8079},{"x":390.5139,"y":-395.7738},{"x":390.5017,"y":-395.7402},{"x":390.4878,"y":-395.7073},{"x":390.4723,"y":-395.6751},{"x":390.4552,"y":-395.6437},{"x":390.4366,"y":-395.6132},{"x":390.4164,"y":-395.5837},{"x":390.3949,"y":-395.5552},{"x":390.3719,"y":-395.5278},{"x":390.3476,"y":-395.5016},{"x":390.322,"y":-395.4767},{"x":390.2952,"y":-395.4531},{"x":390.2673,"y":-395.4308},{"x":390.2383,"y":-395.4099},{"x":390.2083,"y":-395.3905},{"x":390.1773,"y":-395.3727},{"x":390.1455,"y":-395.3564},{"x":390.113,"y":-395.3417},{"x":390.0797,"y":-395.3286},{"x":390.0458,"y":-395.3172},{"x":390.0114,"y":-395.3076},{"x":389.9766,"y":-395.2996},{"x":389.9414,"y":-395.2934},{"x":389.906,"y":-395.289},{"x":389.8703,"y":-395.2863},{"x":389.8346,"y":-395.2854}],"net":""},{"layers":["F"],"pos":[387.122,-393.443],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.122,"y":-393.443},"polygon":[{"x":384.4094,"y":-392.7264},{"x":384.3737,"y":-392.7273},{"x":384.338,"y":-392.73},{"x":384.3026,"y":-392.7344},{"x":384.2674,"y":-392.7406},{"x":384.2326,"y":-392.7486},{"x":384.1982,"y":-392.7582},{"x":384.1643,"y":-392.7696},{"x":384.131,"y":-392.7827},{"x":384.0985,"y":-392.7974},{"x":384.0667,"y":-392.8137},{"x":384.0357,"y":-392.8315},{"x":384.0057,"y":-392.8509},{"x":383.9767,"y":-392.8718},{"x":383.9488,"y":-392.8941},{"x":383.922,"y":-392.9177},{"x":383.8964,"y":-392.9426},{"x":383.8721,"y":-392.9688},{"x":383.8491,"y":-392.9962},{"x":383.8276,"y":-393.0247},{"x":383.8074,"y":-393.0542},{"x":383.7888,"y":-393.0847},{"x":383.7717,"y":-393.1161},{"x":383.7562,"y":-393.1483},{"x":383.7423,"y":-393.1812},{"x":383.7301,"y":-393.2148},{"x":383.7196,"y":-393.2489},{"x":383.7108,"y":-393.2835},{"x":383.7037,"y":-393.3186},{"x":383.6984,"y":-393.3539},{"x":383.6948,"y":-393.3894},{"x":383.693,"y":-393.4251},{"x":383.693,"y":-393.4609},{"x":383.6948,"y":-393.4966},{"x":383.6984,"y":-393.5321},{"x":383.7037,"y":-393.5674},{"x":383.7108,"y":-393.6025},{"x":383.7196,"y":-393.6371},{"x":383.7301,"y":-393.6712},{"x":383.7423,"y":-393.7048},{"x":383.7562,"y":-393.7377},{"x":383.7717,"y":-393.7699},{"x":383.7888,"y":-393.8013},{"x":383.8074,"y":-393.8318},{"x":383.8276,"y":-393.8613},{"x":383.8491,"y":-393.8898},{"x":383.8721,"y":-393.9172},{"x":383.8964,"y":-393.9434},{"x":383.922,"y":-393.9683},{"x":383.9488,"y":-393.9919},{"x":383.9767,"y":-394.0142},{"x":384.0057,"y":-394.0351},{"x":384.0357,"y":-394.0545},{"x":384.0667,"y":-394.0723},{"x":384.0985,"y":-394.0886},{"x":384.131,"y":-394.1033},{"x":384.1643,"y":-394.1164},{"x":384.1982,"y":-394.1278},{"x":384.2326,"y":-394.1374},{"x":384.2674,"y":-394.1454},{"x":384.3026,"y":-394.1516},{"x":384.338,"y":-394.156},{"x":384.3737,"y":-394.1587},{"x":384.4094,"y":-394.1596},{"x":389.8346,"y":-394.1596},{"x":389.8703,"y":-394.1587},{"x":389.906,"y":-394.156},{"x":389.9414,"y":-394.1516},{"x":389.9766,"y":-394.1454},{"x":390.0114,"y":-394.1374},{"x":390.0458,"y":-394.1278},{"x":390.0797,"y":-394.1164},{"x":390.113,"y":-394.1033},{"x":390.1455,"y":-394.0886},{"x":390.1773,"y":-394.0723},{"x":390.2083,"y":-394.0545},{"x":390.2383,"y":-394.0351},{"x":390.2673,"y":-394.0142},{"x":390.2952,"y":-393.9919},{"x":390.322,"y":-393.9683},{"x":390.3476,"y":-393.9434},{"x":390.3719,"y":-393.9172},{"x":390.3949,"y":-393.8898},{"x":390.4164,"y":-393.8613},{"x":390.4366,"y":-393.8318},{"x":390.4552,"y":-393.8013},{"x":390.4723,"y":-393.7699},{"x":390.4878,"y":-393.7377},{"x":390.5017,"y":-393.7048},{"x":390.5139,"y":-393.6712},{"x":390.5244,"y":-393.6371},{"x":390.5332,"y":-393.6025},{"x":390.5403,"y":-393.5674},{"x":390.5456,"y":-393.5321},{"x":390.5492,"y":-393.4966},{"x":390.551,"y":-393.4609},{"x":390.551,"y":-393.4251},{"x":390.5492,"y":-393.3894},{"x":390.5456,"y":-393.3539},{"x":390.5403,"y":-393.3186},{"x":390.5332,"y":-393.2835},{"x":390.5244,"y":-393.2489},{"x":390.5139,"y":-393.2148},{"x":390.5017,"y":-393.1812},{"x":390.4878,"y":-393.1483},{"x":390.4723,"y":-393.1161},{"x":390.4552,"y":-393.0847},{"x":390.4366,"y":-393.0542},{"x":390.4164,"y":-393.0247},{"x":390.3949,"y":-392.9962},{"x":390.3719,"y":-392.9688},{"x":390.3476,"y":-392.9426},{"x":390.322,"y":-392.9177},{"x":390.2952,"y":-392.8941},{"x":390.2673,"y":-392.8718},{"x":390.2383,"y":-392.8509},{"x":390.2083,"y":-392.8315},{"x":390.1773,"y":-392.8137},{"x":390.1455,"y":-392.7974},{"x":390.113,"y":-392.7827},{"x":390.0797,"y":-392.7696},{"x":390.0458,"y":-392.7582},{"x":390.0114,"y":-392.7486},{"x":389.9766,"y":-392.7406},{"x":389.9414,"y":-392.7344},{"x":389.906,"y":-392.73},{"x":389.8703,"y":-392.7273},{"x":389.8346,"y":-392.7264}],"net":"GND"},{"layers":["F"],"pos":[409.728,-416.475],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.728,"y":-416.475},"polygon":[{"x":407.0154,"y":-415.7584},{"x":406.9797,"y":-415.7593},{"x":406.944,"y":-415.762},{"x":406.9086,"y":-415.7664},{"x":406.8734,"y":-415.7726},{"x":406.8386,"y":-415.7806},{"x":406.8042,"y":-415.7902},{"x":406.7703,"y":-415.8016},{"x":406.737,"y":-415.8147},{"x":406.7045,"y":-415.8294},{"x":406.6727,"y":-415.8457},{"x":406.6417,"y":-415.8635},{"x":406.6117,"y":-415.8829},{"x":406.5827,"y":-415.9038},{"x":406.5548,"y":-415.9261},{"x":406.528,"y":-415.9497},{"x":406.5024,"y":-415.9746},{"x":406.4781,"y":-416.0008},{"x":406.4551,"y":-416.0282},{"x":406.4336,"y":-416.0567},{"x":406.4134,"y":-416.0862},{"x":406.3948,"y":-416.1167},{"x":406.3777,"y":-416.1481},{"x":406.3622,"y":-416.1803},{"x":406.3483,"y":-416.2132},{"x":406.3361,"y":-416.2468},{"x":406.3256,"y":-416.2809},{"x":406.3168,"y":-416.3155},{"x":406.3097,"y":-416.3506},{"x":406.3044,"y":-416.3859},{"x":406.3008,"y":-416.4214},{"x":406.299,"y":-416.4571},{"x":406.299,"y":-416.4929},{"x":406.3008,"y":-416.5286},{"x":406.3044,"y":-416.5641},{"x":406.3097,"y":-416.5994},{"x":406.3168,"y":-416.6345},{"x":406.3256,"y":-416.6691},{"x":406.3361,"y":-416.7032},{"x":406.3483,"y":-416.7368},{"x":406.3622,"y":-416.7697},{"x":406.3777,"y":-416.8019},{"x":406.3948,"y":-416.8333},{"x":406.4134,"y":-416.8638},{"x":406.4336,"y":-416.8933},{"x":406.4551,"y":-416.9218},{"x":406.4781,"y":-416.9492},{"x":406.5024,"y":-416.9754},{"x":406.528,"y":-417.0003},{"x":406.5548,"y":-417.0239},{"x":406.5827,"y":-417.0462},{"x":406.6117,"y":-417.0671},{"x":406.6417,"y":-417.0865},{"x":406.6727,"y":-417.1043},{"x":406.7045,"y":-417.1206},{"x":406.737,"y":-417.1353},{"x":406.7703,"y":-417.1484},{"x":406.8042,"y":-417.1598},{"x":406.8386,"y":-417.1694},{"x":406.8734,"y":-417.1774},{"x":406.9086,"y":-417.1836},{"x":406.944,"y":-417.188},{"x":406.9797,"y":-417.1907},{"x":407.0154,"y":-417.1916},{"x":412.4406,"y":-417.1916},{"x":412.4763,"y":-417.1907},{"x":412.512,"y":-417.188},{"x":412.5474,"y":-417.1836},{"x":412.5826,"y":-417.1774},{"x":412.6174,"y":-417.1694},{"x":412.6518,"y":-417.1598},{"x":412.6857,"y":-417.1484},{"x":412.719,"y":-417.1353},{"x":412.7515,"y":-417.1206},{"x":412.7833,"y":-417.1043},{"x":412.8143,"y":-417.0865},{"x":412.8443,"y":-417.0671},{"x":412.8733,"y":-417.0462},{"x":412.9012,"y":-417.0239},{"x":412.928,"y":-417.0003},{"x":412.9536,"y":-416.9754},{"x":412.9779,"y":-416.9492},{"x":413.0009,"y":-416.9218},{"x":413.0224,"y":-416.8933},{"x":413.0426,"y":-416.8638},{"x":413.0612,"y":-416.8333},{"x":413.0783,"y":-416.8019},{"x":413.0938,"y":-416.7697},{"x":413.1077,"y":-416.7368},{"x":413.1199,"y":-416.7032},{"x":413.1304,"y":-416.6691},{"x":413.1392,"y":-416.6345},{"x":413.1463,"y":-416.5994},{"x":413.1516,"y":-416.5641},{"x":413.1552,"y":-416.5286},{"x":413.157,"y":-416.4929},{"x":413.157,"y":-416.4571},{"x":413.1552,"y":-416.4214},{"x":413.1516,"y":-416.3859},{"x":413.1463,"y":-416.3506},{"x":413.1392,"y":-416.3155},{"x":413.1304,"y":-416.2809},{"x":413.1199,"y":-416.2468},{"x":413.1077,"y":-416.2132},{"x":413.0938,"y":-416.1803},{"x":413.0783,"y":-416.1481},{"x":413.0612,"y":-416.1167},{"x":413.0426,"y":-416.0862},{"x":413.0224,"y":-416.0567},{"x":413.0009,"y":-416.0282},{"x":412.9779,"y":-416.0008},{"x":412.9536,"y":-415.9746},{"x":412.928,"y":-415.9497},{"x":412.9012,"y":-415.9261},{"x":412.8733,"y":-415.9038},{"x":412.8443,"y":-415.8829},{"x":412.8143,"y":-415.8635},{"x":412.7833,"y":-415.8457},{"x":412.7515,"y":-415.8294},{"x":412.719,"y":-415.8147},{"x":412.6857,"y":-415.8016},{"x":412.6518,"y":-415.7902},{"x":412.6174,"y":-415.7806},{"x":412.5826,"y":-415.7726},{"x":412.5474,"y":-415.7664},{"x":412.512,"y":-415.762},{"x":412.4763,"y":-415.7593},{"x":412.4406,"y":-415.7584}],"net":"TEMP0"},{"layers":["F"],"pos":[409.728,-413.916],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.728,"y":-413.916},"polygon":[{"x":407.0154,"y":-413.1994},{"x":406.9797,"y":-413.2003},{"x":406.944,"y":-413.203},{"x":406.9086,"y":-413.2074},{"x":406.8734,"y":-413.2136},{"x":406.8386,"y":-413.2216},{"x":406.8042,"y":-413.2312},{"x":406.7703,"y":-413.2426},{"x":406.737,"y":-413.2557},{"x":406.7045,"y":-413.2704},{"x":406.6727,"y":-413.2867},{"x":406.6417,"y":-413.3045},{"x":406.6117,"y":-413.3239},{"x":406.5827,"y":-413.3448},{"x":406.5548,"y":-413.3671},{"x":406.528,"y":-413.3907},{"x":406.5024,"y":-413.4156},{"x":406.4781,"y":-413.4418},{"x":406.4551,"y":-413.4692},{"x":406.4336,"y":-413.4977},{"x":406.4134,"y":-413.5272},{"x":406.3948,"y":-413.5577},{"x":406.3777,"y":-413.5891},{"x":406.3622,"y":-413.6213},{"x":406.3483,"y":-413.6542},{"x":406.3361,"y":-413.6878},{"x":406.3256,"y":-413.7219},{"x":406.3168,"y":-413.7565},{"x":406.3097,"y":-413.7916},{"x":406.3044,"y":-413.8269},{"x":406.3008,"y":-413.8624},{"x":406.299,"y":-413.8981},{"x":406.299,"y":-413.9339},{"x":406.3008,"y":-413.9696},{"x":406.3044,"y":-414.0051},{"x":406.3097,"y":-414.0404},{"x":406.3168,"y":-414.0755},{"x":406.3256,"y":-414.1101},{"x":406.3361,"y":-414.1442},{"x":406.3483,"y":-414.1778},{"x":406.3622,"y":-414.2107},{"x":406.3777,"y":-414.2429},{"x":406.3948,"y":-414.2743},{"x":406.4134,"y":-414.3048},{"x":406.4336,"y":-414.3343},{"x":406.4551,"y":-414.3628},{"x":406.4781,"y":-414.3902},{"x":406.5024,"y":-414.4164},{"x":406.528,"y":-414.4413},{"x":406.5548,"y":-414.4649},{"x":406.5827,"y":-414.4872},{"x":406.6117,"y":-414.5081},{"x":406.6417,"y":-414.5275},{"x":406.6727,"y":-414.5453},{"x":406.7045,"y":-414.5616},{"x":406.737,"y":-414.5763},{"x":406.7703,"y":-414.5894},{"x":406.8042,"y":-414.6008},{"x":406.8386,"y":-414.6104},{"x":406.8734,"y":-414.6184},{"x":406.9086,"y":-414.6246},{"x":406.944,"y":-414.629},{"x":406.9797,"y":-414.6317},{"x":407.0154,"y":-414.6326},{"x":412.4406,"y":-414.6326},{"x":412.4763,"y":-414.6317},{"x":412.512,"y":-414.629},{"x":412.5474,"y":-414.6246},{"x":412.5826,"y":-414.6184},{"x":412.6174,"y":-414.6104},{"x":412.6518,"y":-414.6008},{"x":412.6857,"y":-414.5894},{"x":412.719,"y":-414.5763},{"x":412.7515,"y":-414.5616},{"x":412.7833,"y":-414.5453},{"x":412.8143,"y":-414.5275},{"x":412.8443,"y":-414.5081},{"x":412.8733,"y":-414.4872},{"x":412.9012,"y":-414.4649},{"x":412.928,"y":-414.4413},{"x":412.9536,"y":-414.4164},{"x":412.9779,"y":-414.3902},{"x":413.0009,"y":-414.3628},{"x":413.0224,"y":-414.3343},{"x":413.0426,"y":-414.3048},{"x":413.0612,"y":-414.2743},{"x":413.0783,"y":-414.2429},{"x":413.0938,"y":-414.2107},{"x":413.1077,"y":-414.1778},{"x":413.1199,"y":-414.1442},{"x":413.1304,"y":-414.1101},{"x":413.1392,"y":-414.0755},{"x":413.1463,"y":-414.0404},{"x":413.1516,"y":-414.0051},{"x":413.1552,"y":-413.9696},{"x":413.157,"y":-413.9339},{"x":413.157,"y":-413.8981},{"x":413.1552,"y":-413.8624},{"x":413.1516,"y":-413.8269},{"x":413.1463,"y":-413.7916},{"x":413.1392,"y":-413.7565},{"x":413.1304,"y":-413.7219},{"x":413.1199,"y":-413.6878},{"x":413.1077,"y":-413.6542},{"x":413.0938,"y":-413.6213},{"x":413.0783,"y":-413.5891},{"x":413.0612,"y":-413.5577},{"x":413.0426,"y":-413.5272},{"x":413.0224,"y":-413.4977},{"x":413.0009,"y":-413.4692},{"x":412.9779,"y":-413.4418},{"x":412.9536,"y":-413.4156},{"x":412.928,"y":-413.3907},{"x":412.9012,"y":-413.3671},{"x":412.8733,"y":-413.3448},{"x":412.8443,"y":-413.3239},{"x":412.8143,"y":-413.3045},{"x":412.7833,"y":-413.2867},{"x":412.7515,"y":-413.2704},{"x":412.719,"y":-413.2557},{"x":412.6857,"y":-413.2426},{"x":412.6518,"y":-413.2312},{"x":412.6174,"y":-413.2216},{"x":412.5826,"y":-413.2136},{"x":412.5474,"y":-413.2074},{"x":412.512,"y":-413.203},{"x":412.4763,"y":-413.2003},{"x":412.4406,"y":-413.1994}],"net":"TEMP1"},{"layers":["F"],"pos":[409.728,-411.357],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.728,"y":-411.357},"polygon":[{"x":407.0154,"y":-410.6404},{"x":406.9797,"y":-410.6413},{"x":406.944,"y":-410.644},{"x":406.9086,"y":-410.6484},{"x":406.8734,"y":-410.6546},{"x":406.8386,"y":-410.6626},{"x":406.8042,"y":-410.6722},{"x":406.7703,"y":-410.6836},{"x":406.737,"y":-410.6967},{"x":406.7045,"y":-410.7114},{"x":406.6727,"y":-410.7277},{"x":406.6417,"y":-410.7455},{"x":406.6117,"y":-410.7649},{"x":406.5827,"y":-410.7858},{"x":406.5548,"y":-410.8081},{"x":406.528,"y":-410.8317},{"x":406.5024,"y":-410.8566},{"x":406.4781,"y":-410.8828},{"x":406.4551,"y":-410.9102},{"x":406.4336,"y":-410.9387},{"x":406.4134,"y":-410.9682},{"x":406.3948,"y":-410.9987},{"x":406.3777,"y":-411.0301},{"x":406.3622,"y":-411.0623},{"x":406.3483,"y":-411.0952},{"x":406.3361,"y":-411.1288},{"x":406.3256,"y":-411.1629},{"x":406.3168,"y":-411.1975},{"x":406.3097,"y":-411.2326},{"x":406.3044,"y":-411.2679},{"x":406.3008,"y":-411.3034},{"x":406.299,"y":-411.3391},{"x":406.299,"y":-411.3749},{"x":406.3008,"y":-411.4106},{"x":406.3044,"y":-411.4461},{"x":406.3097,"y":-411.4814},{"x":406.3168,"y":-411.5165},{"x":406.3256,"y":-411.5511},{"x":406.3361,"y":-411.5852},{"x":406.3483,"y":-411.6188},{"x":406.3622,"y":-411.6517},{"x":406.3777,"y":-411.6839},{"x":406.3948,"y":-411.7153},{"x":406.4134,"y":-411.7458},{"x":406.4336,"y":-411.7753},{"x":406.4551,"y":-411.8038},{"x":406.4781,"y":-411.8312},{"x":406.5024,"y":-411.8574},{"x":406.528,"y":-411.8823},{"x":406.5548,"y":-411.9059},{"x":406.5827,"y":-411.9282},{"x":406.6117,"y":-411.9491},{"x":406.6417,"y":-411.9685},{"x":406.6727,"y":-411.9863},{"x":406.7045,"y":-412.0026},{"x":406.737,"y":-412.0173},{"x":406.7703,"y":-412.0304},{"x":406.8042,"y":-412.0418},{"x":406.8386,"y":-412.0514},{"x":406.8734,"y":-412.0594},{"x":406.9086,"y":-412.0656},{"x":406.944,"y":-412.07},{"x":406.9797,"y":-412.0727},{"x":407.0154,"y":-412.0736},{"x":412.4406,"y":-412.0736},{"x":412.4763,"y":-412.0727},{"x":412.512,"y":-412.07},{"x":412.5474,"y":-412.0656},{"x":412.5826,"y":-412.0594},{"x":412.6174,"y":-412.0514},{"x":412.6518,"y":-412.0418},{"x":412.6857,"y":-412.0304},{"x":412.719,"y":-412.0173},{"x":412.7515,"y":-412.0026},{"x":412.7833,"y":-411.9863},{"x":412.8143,"y":-411.9685},{"x":412.8443,"y":-411.9491},{"x":412.8733,"y":-411.9282},{"x":412.9012,"y":-411.9059},{"x":412.928,"y":-411.8823},{"x":412.9536,"y":-411.8574},{"x":412.9779,"y":-411.8312},{"x":413.0009,"y":-411.8038},{"x":413.0224,"y":-411.7753},{"x":413.0426,"y":-411.7458},{"x":413.0612,"y":-411.7153},{"x":413.0783,"y":-411.6839},{"x":413.0938,"y":-411.6517},{"x":413.1077,"y":-411.6188},{"x":413.1199,"y":-411.5852},{"x":413.1304,"y":-411.5511},{"x":413.1392,"y":-411.5165},{"x":413.1463,"y":-411.4814},{"x":413.1516,"y":-411.4461},{"x":413.1552,"y":-411.4106},{"x":413.157,"y":-411.3749},{"x":413.157,"y":-411.3391},{"x":413.1552,"y":-411.3034},{"x":413.1516,"y":-411.2679},{"x":413.1463,"y":-411.2326},{"x":413.1392,"y":-411.1975},{"x":413.1304,"y":-411.1629},{"x":413.1199,"y":-411.1288},{"x":413.1077,"y":-411.0952},{"x":413.0938,"y":-411.0623},{"x":413.0783,"y":-411.0301},{"x":413.0612,"y":-410.9987},{"x":413.0426,"y":-410.9682},{"x":413.0224,"y":-410.9387},{"x":413.0009,"y":-410.9102},{"x":412.9779,"y":-410.8828},{"x":412.9536,"y":-410.8566},{"x":412.928,"y":-410.8317},{"x":412.9012,"y":-410.8081},{"x":412.8733,"y":-410.7858},{"x":412.8443,"y":-410.7649},{"x":412.8143,"y":-410.7455},{"x":412.7833,"y":-410.7277},{"x":412.7515,"y":-410.7114},{"x":412.719,"y":-410.6967},{"x":412.6857,"y":-410.6836},{"x":412.6518,"y":-410.6722},{"x":412.6174,"y":-410.6626},{"x":412.5826,"y":-410.6546},{"x":412.5474,"y":-410.6484},{"x":412.512,"y":-410.644},{"x":412.4763,"y":-410.6413},{"x":412.4406,"y":-410.6404}],"net":""},{"layers":["F"],"pos":[409.728,-408.798],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.728,"y":-408.798},"polygon":[{"x":407.0154,"y":-408.0814},{"x":406.9797,"y":-408.0823},{"x":406.944,"y":-408.085},{"x":406.9086,"y":-408.0894},{"x":406.8734,"y":-408.0956},{"x":406.8386,"y":-408.1036},{"x":406.8042,"y":-408.1132},{"x":406.7703,"y":-408.1246},{"x":406.737,"y":-408.1377},{"x":406.7045,"y":-408.1524},{"x":406.6727,"y":-408.1687},{"x":406.6417,"y":-408.1865},{"x":406.6117,"y":-408.2059},{"x":406.5827,"y":-408.2268},{"x":406.5548,"y":-408.2491},{"x":406.528,"y":-408.2727},{"x":406.5024,"y":-408.2976},{"x":406.4781,"y":-408.3238},{"x":406.4551,"y":-408.3512},{"x":406.4336,"y":-408.3797},{"x":406.4134,"y":-408.4092},{"x":406.3948,"y":-408.4397},{"x":406.3777,"y":-408.4711},{"x":406.3622,"y":-408.5033},{"x":406.3483,"y":-408.5362},{"x":406.3361,"y":-408.5698},{"x":406.3256,"y":-408.6039},{"x":406.3168,"y":-408.6385},{"x":406.3097,"y":-408.6736},{"x":406.3044,"y":-408.7089},{"x":406.3008,"y":-408.7444},{"x":406.299,"y":-408.7801},{"x":406.299,"y":-408.8159},{"x":406.3008,"y":-408.8516},{"x":406.3044,"y":-408.8871},{"x":406.3097,"y":-408.9224},{"x":406.3168,"y":-408.9575},{"x":406.3256,"y":-408.9921},{"x":406.3361,"y":-409.0262},{"x":406.3483,"y":-409.0598},{"x":406.3622,"y":-409.0927},{"x":406.3777,"y":-409.1249},{"x":406.3948,"y":-409.1563},{"x":406.4134,"y":-409.1868},{"x":406.4336,"y":-409.2163},{"x":406.4551,"y":-409.2448},{"x":406.4781,"y":-409.2722},{"x":406.5024,"y":-409.2984},{"x":406.528,"y":-409.3233},{"x":406.5548,"y":-409.3469},{"x":406.5827,"y":-409.3692},{"x":406.6117,"y":-409.3901},{"x":406.6417,"y":-409.4095},{"x":406.6727,"y":-409.4273},{"x":406.7045,"y":-409.4436},{"x":406.737,"y":-409.4583},{"x":406.7703,"y":-409.4714},{"x":406.8042,"y":-409.4828},{"x":406.8386,"y":-409.4924},{"x":406.8734,"y":-409.5004},{"x":406.9086,"y":-409.5066},{"x":406.944,"y":-409.511},{"x":406.9797,"y":-409.5137},{"x":407.0154,"y":-409.5146},{"x":412.4406,"y":-409.5146},{"x":412.4763,"y":-409.5137},{"x":412.512,"y":-409.511},{"x":412.5474,"y":-409.5066},{"x":412.5826,"y":-409.5004},{"x":412.6174,"y":-409.4924},{"x":412.6518,"y":-409.4828},{"x":412.6857,"y":-409.4714},{"x":412.719,"y":-409.4583},{"x":412.7515,"y":-409.4436},{"x":412.7833,"y":-409.4273},{"x":412.8143,"y":-409.4095},{"x":412.8443,"y":-409.3901},{"x":412.8733,"y":-409.3692},{"x":412.9012,"y":-409.3469},{"x":412.928,"y":-409.3233},{"x":412.9536,"y":-409.2984},{"x":412.9779,"y":-409.2722},{"x":413.0009,"y":-409.2448},{"x":413.0224,"y":-409.2163},{"x":413.0426,"y":-409.1868},{"x":413.0612,"y":-409.1563},{"x":413.0783,"y":-409.1249},{"x":413.0938,"y":-409.0927},{"x":413.1077,"y":-409.0598},{"x":413.1199,"y":-409.0262},{"x":413.1304,"y":-408.9921},{"x":413.1392,"y":-408.9575},{"x":413.1463,"y":-408.9224},{"x":413.1516,"y":-408.8871},{"x":413.1552,"y":-408.8516},{"x":413.157,"y":-408.8159},{"x":413.157,"y":-408.7801},{"x":413.1552,"y":-408.7444},{"x":413.1516,"y":-408.7089},{"x":413.1463,"y":-408.6736},{"x":413.1392,"y":-408.6385},{"x":413.1304,"y":-408.6039},{"x":413.1199,"y":-408.5698},{"x":413.1077,"y":-408.5362},{"x":413.0938,"y":-408.5033},{"x":413.0783,"y":-408.4711},{"x":413.0612,"y":-408.4397},{"x":413.0426,"y":-408.4092},{"x":413.0224,"y":-408.3797},{"x":413.0009,"y":-408.3512},{"x":412.9779,"y":-408.3238},{"x":412.9536,"y":-408.2976},{"x":412.928,"y":-408.2727},{"x":412.9012,"y":-408.2491},{"x":412.8733,"y":-408.2268},{"x":412.8443,"y":-408.2059},{"x":412.8143,"y":-408.1865},{"x":412.7833,"y":-408.1687},{"x":412.7515,"y":-408.1524},{"x":412.719,"y":-408.1377},{"x":412.6857,"y":-408.1246},{"x":412.6518,"y":-408.1132},{"x":412.6174,"y":-408.1036},{"x":412.5826,"y":-408.0956},{"x":412.5474,"y":-408.0894},{"x":412.512,"y":-408.085},{"x":412.4763,"y":-408.0823},{"x":412.4406,"y":-408.0814}],"net":"SDA"},{"layers":["F"],"pos":[409.728,-406.238],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.728,"y":-406.238},"polygon":[{"x":407.0154,"y":-405.5214},{"x":406.9797,"y":-405.5223},{"x":406.944,"y":-405.525},{"x":406.9086,"y":-405.5294},{"x":406.8734,"y":-405.5356},{"x":406.8386,"y":-405.5436},{"x":406.8042,"y":-405.5532},{"x":406.7703,"y":-405.5646},{"x":406.737,"y":-405.5777},{"x":406.7045,"y":-405.5924},{"x":406.6727,"y":-405.6087},{"x":406.6417,"y":-405.6265},{"x":406.6117,"y":-405.6459},{"x":406.5827,"y":-405.6668},{"x":406.5548,"y":-405.6891},{"x":406.528,"y":-405.7127},{"x":406.5024,"y":-405.7376},{"x":406.4781,"y":-405.7638},{"x":406.4551,"y":-405.7912},{"x":406.4336,"y":-405.8197},{"x":406.4134,"y":-405.8492},{"x":406.3948,"y":-405.8797},{"x":406.3777,"y":-405.9111},{"x":406.3622,"y":-405.9433},{"x":406.3483,"y":-405.9762},{"x":406.3361,"y":-406.0098},{"x":406.3256,"y":-406.0439},{"x":406.3168,"y":-406.0785},{"x":406.3097,"y":-406.1136},{"x":406.3044,"y":-406.1489},{"x":406.3008,"y":-406.1844},{"x":406.299,"y":-406.2201},{"x":406.299,"y":-406.2559},{"x":406.3008,"y":-406.2916},{"x":406.3044,"y":-406.3271},{"x":406.3097,"y":-406.3624},{"x":406.3168,"y":-406.3975},{"x":406.3256,"y":-406.4321},{"x":406.3361,"y":-406.4662},{"x":406.3483,"y":-406.4998},{"x":406.3622,"y":-406.5327},{"x":406.3777,"y":-406.5649},{"x":406.3948,"y":-406.5963},{"x":406.4134,"y":-406.6268},{"x":406.4336,"y":-406.6563},{"x":406.4551,"y":-406.6848},{"x":406.4781,"y":-406.7122},{"x":406.5024,"y":-406.7384},{"x":406.528,"y":-406.7633},{"x":406.5548,"y":-406.7869},{"x":406.5827,"y":-406.8092},{"x":406.6117,"y":-406.8301},{"x":406.6417,"y":-406.8495},{"x":406.6727,"y":-406.8673},{"x":406.7045,"y":-406.8836},{"x":406.737,"y":-406.8983},{"x":406.7703,"y":-406.9114},{"x":406.8042,"y":-406.9228},{"x":406.8386,"y":-406.9324},{"x":406.8734,"y":-406.9404},{"x":406.9086,"y":-406.9466},{"x":406.944,"y":-406.951},{"x":406.9797,"y":-406.9537},{"x":407.0154,"y":-406.9546},{"x":412.4406,"y":-406.9546},{"x":412.4763,"y":-406.9537},{"x":412.512,"y":-406.951},{"x":412.5474,"y":-406.9466},{"x":412.5826,"y":-406.9404},{"x":412.6174,"y":-406.9324},{"x":412.6518,"y":-406.9228},{"x":412.6857,"y":-406.9114},{"x":412.719,"y":-406.8983},{"x":412.7515,"y":-406.8836},{"x":412.7833,"y":-406.8673},{"x":412.8143,"y":-406.8495},{"x":412.8443,"y":-406.8301},{"x":412.8733,"y":-406.8092},{"x":412.9012,"y":-406.7869},{"x":412.928,"y":-406.7633},{"x":412.9536,"y":-406.7384},{"x":412.9779,"y":-406.7122},{"x":413.0009,"y":-406.6848},{"x":413.0224,"y":-406.6563},{"x":413.0426,"y":-406.6268},{"x":413.0612,"y":-406.5963},{"x":413.0783,"y":-406.5649},{"x":413.0938,"y":-406.5327},{"x":413.1077,"y":-406.4998},{"x":413.1199,"y":-406.4662},{"x":413.1304,"y":-406.4321},{"x":413.1392,"y":-406.3975},{"x":413.1463,"y":-406.3624},{"x":413.1516,"y":-406.3271},{"x":413.1552,"y":-406.2916},{"x":413.157,"y":-406.2559},{"x":413.157,"y":-406.2201},{"x":413.1552,"y":-406.1844},{"x":413.1516,"y":-406.1489},{"x":413.1463,"y":-406.1136},{"x":413.1392,"y":-406.0785},{"x":413.1304,"y":-406.0439},{"x":413.1199,"y":-406.0098},{"x":413.1077,"y":-405.9762},{"x":413.0938,"y":-405.9433},{"x":413.0783,"y":-405.9111},{"x":413.0612,"y":-405.8797},{"x":413.0426,"y":-405.8492},{"x":413.0224,"y":-405.8197},{"x":413.0009,"y":-405.7912},{"x":412.9779,"y":-405.7638},{"x":412.9536,"y":-405.7376},{"x":412.928,"y":-405.7127},{"x":412.9012,"y":-405.6891},{"x":412.8733,"y":-405.6668},{"x":412.8443,"y":-405.6459},{"x":412.8143,"y":-405.6265},{"x":412.7833,"y":-405.6087},{"x":412.7515,"y":-405.5924},{"x":412.719,"y":-405.5777},{"x":412.6857,"y":-405.5646},{"x":412.6518,"y":-405.5532},{"x":412.6174,"y":-405.5436},{"x":412.5826,"y":-405.5356},{"x":412.5474,"y":-405.5294},{"x":412.512,"y":-405.525},{"x":412.4763,"y":-405.5223},{"x":412.4406,"y":-405.5214}],"net":"SCL"},{"layers":["F"],"pos":[409.728,-403.679],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.728,"y":-403.679},"polygon":[{"x":407.0154,"y":-402.9624},{"x":406.9797,"y":-402.9633},{"x":406.944,"y":-402.966},{"x":406.9086,"y":-402.9704},{"x":406.8734,"y":-402.9766},{"x":406.8386,"y":-402.9846},{"x":406.8042,"y":-402.9942},{"x":406.7703,"y":-403.0056},{"x":406.737,"y":-403.0187},{"x":406.7045,"y":-403.0334},{"x":406.6727,"y":-403.0497},{"x":406.6417,"y":-403.0675},{"x":406.6117,"y":-403.0869},{"x":406.5827,"y":-403.1078},{"x":406.5548,"y":-403.1301},{"x":406.528,"y":-403.1537},{"x":406.5024,"y":-403.1786},{"x":406.4781,"y":-403.2048},{"x":406.4551,"y":-403.2322},{"x":406.4336,"y":-403.2607},{"x":406.4134,"y":-403.2902},{"x":406.3948,"y":-403.3207},{"x":406.3777,"y":-403.3521},{"x":406.3622,"y":-403.3843},{"x":406.3483,"y":-403.4172},{"x":406.3361,"y":-403.4508},{"x":406.3256,"y":-403.4849},{"x":406.3168,"y":-403.5195},{"x":406.3097,"y":-403.5546},{"x":406.3044,"y":-403.5899},{"x":406.3008,"y":-403.6254},{"x":406.299,"y":-403.6611},{"x":406.299,"y":-403.6969},{"x":406.3008,"y":-403.7326},{"x":406.3044,"y":-403.7681},{"x":406.3097,"y":-403.8034},{"x":406.3168,"y":-403.8385},{"x":406.3256,"y":-403.8731},{"x":406.3361,"y":-403.9072},{"x":406.3483,"y":-403.9408},{"x":406.3622,"y":-403.9737},{"x":406.3777,"y":-404.0059},{"x":406.3948,"y":-404.0373},{"x":406.4134,"y":-404.0678},{"x":406.4336,"y":-404.0973},{"x":406.4551,"y":-404.1258},{"x":406.4781,"y":-404.1532},{"x":406.5024,"y":-404.1794},{"x":406.528,"y":-404.2043},{"x":406.5548,"y":-404.2279},{"x":406.5827,"y":-404.2502},{"x":406.6117,"y":-404.2711},{"x":406.6417,"y":-404.2905},{"x":406.6727,"y":-404.3083},{"x":406.7045,"y":-404.3246},{"x":406.737,"y":-404.3393},{"x":406.7703,"y":-404.3524},{"x":406.8042,"y":-404.3638},{"x":406.8386,"y":-404.3734},{"x":406.8734,"y":-404.3814},{"x":406.9086,"y":-404.3876},{"x":406.944,"y":-404.392},{"x":406.9797,"y":-404.3947},{"x":407.0154,"y":-404.3956},{"x":412.4406,"y":-404.3956},{"x":412.4763,"y":-404.3947},{"x":412.512,"y":-404.392},{"x":412.5474,"y":-404.3876},{"x":412.5826,"y":-404.3814},{"x":412.6174,"y":-404.3734},{"x":412.6518,"y":-404.3638},{"x":412.6857,"y":-404.3524},{"x":412.719,"y":-404.3393},{"x":412.7515,"y":-404.3246},{"x":412.7833,"y":-404.3083},{"x":412.8143,"y":-404.2905},{"x":412.8443,"y":-404.2711},{"x":412.8733,"y":-404.2502},{"x":412.9012,"y":-404.2279},{"x":412.928,"y":-404.2043},{"x":412.9536,"y":-404.1794},{"x":412.9779,"y":-404.1532},{"x":413.0009,"y":-404.1258},{"x":413.0224,"y":-404.0973},{"x":413.0426,"y":-404.0678},{"x":413.0612,"y":-404.0373},{"x":413.0783,"y":-404.0059},{"x":413.0938,"y":-403.9737},{"x":413.1077,"y":-403.9408},{"x":413.1199,"y":-403.9072},{"x":413.1304,"y":-403.8731},{"x":413.1392,"y":-403.8385},{"x":413.1463,"y":-403.8034},{"x":413.1516,"y":-403.7681},{"x":413.1552,"y":-403.7326},{"x":413.157,"y":-403.6969},{"x":413.157,"y":-403.6611},{"x":413.1552,"y":-403.6254},{"x":413.1516,"y":-403.5899},{"x":413.1463,"y":-403.5546},{"x":413.1392,"y":-403.5195},{"x":413.1304,"y":-403.4849},{"x":413.1199,"y":-403.4508},{"x":413.1077,"y":-403.4172},{"x":413.0938,"y":-403.3843},{"x":413.0783,"y":-403.3521},{"x":413.0612,"y":-403.3207},{"x":413.0426,"y":-403.2902},{"x":413.0224,"y":-403.2607},{"x":413.0009,"y":-403.2322},{"x":412.9779,"y":-403.2048},{"x":412.9536,"y":-403.1786},{"x":412.928,"y":-403.1537},{"x":412.9012,"y":-403.1301},{"x":412.8733,"y":-403.1078},{"x":412.8443,"y":-403.0869},{"x":412.8143,"y":-403.0675},{"x":412.7833,"y":-403.0497},{"x":412.7515,"y":-403.0334},{"x":412.719,"y":-403.0187},{"x":412.6857,"y":-403.0056},{"x":412.6518,"y":-402.9942},{"x":412.6174,"y":-402.9846},{"x":412.5826,"y":-402.9766},{"x":412.5474,"y":-402.9704},{"x":412.512,"y":-402.966},{"x":412.4763,"y":-402.9633},{"x":412.4406,"y":-402.9624}],"net":"HEAT"},{"layers":["F"],"pos":[409.728,-401.12],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.728,"y":-401.12},"polygon":[{"x":407.0154,"y":-400.4034},{"x":406.9797,"y":-400.4043},{"x":406.944,"y":-400.407},{"x":406.9086,"y":-400.4114},{"x":406.8734,"y":-400.4176},{"x":406.8386,"y":-400.4256},{"x":406.8042,"y":-400.4352},{"x":406.7703,"y":-400.4466},{"x":406.737,"y":-400.4597},{"x":406.7045,"y":-400.4744},{"x":406.6727,"y":-400.4907},{"x":406.6417,"y":-400.5085},{"x":406.6117,"y":-400.5279},{"x":406.5827,"y":-400.5488},{"x":406.5548,"y":-400.5711},{"x":406.528,"y":-400.5947},{"x":406.5024,"y":-400.6196},{"x":406.4781,"y":-400.6458},{"x":406.4551,"y":-400.6732},{"x":406.4336,"y":-400.7017},{"x":406.4134,"y":-400.7312},{"x":406.3948,"y":-400.7617},{"x":406.3777,"y":-400.7931},{"x":406.3622,"y":-400.8253},{"x":406.3483,"y":-400.8582},{"x":406.3361,"y":-400.8918},{"x":406.3256,"y":-400.9259},{"x":406.3168,"y":-400.9605},{"x":406.3097,"y":-400.9956},{"x":406.3044,"y":-401.0309},{"x":406.3008,"y":-401.0664},{"x":406.299,"y":-401.1021},{"x":406.299,"y":-401.1379},{"x":406.3008,"y":-401.1736},{"x":406.3044,"y":-401.2091},{"x":406.3097,"y":-401.2444},{"x":406.3168,"y":-401.2795},{"x":406.3256,"y":-401.3141},{"x":406.3361,"y":-401.3482},{"x":406.3483,"y":-401.3818},{"x":406.3622,"y":-401.4147},{"x":406.3777,"y":-401.4469},{"x":406.3948,"y":-401.4783},{"x":406.4134,"y":-401.5088},{"x":406.4336,"y":-401.5383},{"x":406.4551,"y":-401.5668},{"x":406.4781,"y":-401.5942},{"x":406.5024,"y":-401.6204},{"x":406.528,"y":-401.6453},{"x":406.5548,"y":-401.6689},{"x":406.5827,"y":-401.6912},{"x":406.6117,"y":-401.7121},{"x":406.6417,"y":-401.7315},{"x":406.6727,"y":-401.7493},{"x":406.7045,"y":-401.7656},{"x":406.737,"y":-401.7803},{"x":406.7703,"y":-401.7934},{"x":406.8042,"y":-401.8048},{"x":406.8386,"y":-401.8144},{"x":406.8734,"y":-401.8224},{"x":406.9086,"y":-401.8286},{"x":406.944,"y":-401.833},{"x":406.9797,"y":-401.8357},{"x":407.0154,"y":-401.8366},{"x":412.4406,"y":-401.8366},{"x":412.4763,"y":-401.8357},{"x":412.512,"y":-401.833},{"x":412.5474,"y":-401.8286},{"x":412.5826,"y":-401.8224},{"x":412.6174,"y":-401.8144},{"x":412.6518,"y":-401.8048},{"x":412.6857,"y":-401.7934},{"x":412.719,"y":-401.7803},{"x":412.7515,"y":-401.7656},{"x":412.7833,"y":-401.7493},{"x":412.8143,"y":-401.7315},{"x":412.8443,"y":-401.7121},{"x":412.8733,"y":-401.6912},{"x":412.9012,"y":-401.6689},{"x":412.928,"y":-401.6453},{"x":412.9536,"y":-401.6204},{"x":412.9779,"y":-401.5942},{"x":413.0009,"y":-401.5668},{"x":413.0224,"y":-401.5383},{"x":413.0426,"y":-401.5088},{"x":413.0612,"y":-401.4783},{"x":413.0783,"y":-401.4469},{"x":413.0938,"y":-401.4147},{"x":413.1077,"y":-401.3818},{"x":413.1199,"y":-401.3482},{"x":413.1304,"y":-401.3141},{"x":413.1392,"y":-401.2795},{"x":413.1463,"y":-401.2444},{"x":413.1516,"y":-401.2091},{"x":413.1552,"y":-401.1736},{"x":413.157,"y":-401.1379},{"x":413.157,"y":-401.1021},{"x":413.1552,"y":-401.0664},{"x":413.1516,"y":-401.0309},{"x":413.1463,"y":-400.9956},{"x":413.1392,"y":-400.9605},{"x":413.1304,"y":-400.9259},{"x":413.1199,"y":-400.8918},{"x":413.1077,"y":-400.8582},{"x":413.0938,"y":-400.8253},{"x":413.0783,"y":-400.7931},{"x":413.0612,"y":-400.7617},{"x":413.0426,"y":-400.7312},{"x":413.0224,"y":-400.7017},{"x":413.0009,"y":-400.6732},{"x":412.9779,"y":-400.6458},{"x":412.9536,"y":-400.6196},{"x":412.928,"y":-400.5947},{"x":412.9012,"y":-400.5711},{"x":412.8733,"y":-400.5488},{"x":412.8443,"y":-400.5279},{"x":412.8143,"y":-400.5085},{"x":412.7833,"y":-400.4907},{"x":412.7515,"y":-400.4744},{"x":412.719,"y":-400.4597},{"x":412.6857,"y":-400.4466},{"x":412.6518,"y":-400.4352},{"x":412.6174,"y":-400.4256},{"x":412.5826,"y":-400.4176},{"x":412.5474,"y":-400.4114},{"x":412.512,"y":-400.407},{"x":412.4763,"y":-400.4043},{"x":412.4406,"y":-400.4034}],"net":"SW1"},{"layers":["F"],"pos":[409.728,-398.561],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.728,"y":-398.561},"polygon":[{"x":407.0154,"y":-397.8444},{"x":406.9797,"y":-397.8453},{"x":406.944,"y":-397.848},{"x":406.9086,"y":-397.8524},{"x":406.8734,"y":-397.8586},{"x":406.8386,"y":-397.8666},{"x":406.8042,"y":-397.8762},{"x":406.7703,"y":-397.8876},{"x":406.737,"y":-397.9007},{"x":406.7045,"y":-397.9154},{"x":406.6727,"y":-397.9317},{"x":406.6417,"y":-397.9495},{"x":406.6117,"y":-397.9689},{"x":406.5827,"y":-397.9898},{"x":406.5548,"y":-398.0121},{"x":406.528,"y":-398.0357},{"x":406.5024,"y":-398.0606},{"x":406.4781,"y":-398.0868},{"x":406.4551,"y":-398.1142},{"x":406.4336,"y":-398.1427},{"x":406.4134,"y":-398.1722},{"x":406.3948,"y":-398.2027},{"x":406.3777,"y":-398.2341},{"x":406.3622,"y":-398.2663},{"x":406.3483,"y":-398.2992},{"x":406.3361,"y":-398.3328},{"x":406.3256,"y":-398.3669},{"x":406.3168,"y":-398.4015},{"x":406.3097,"y":-398.4366},{"x":406.3044,"y":-398.4719},{"x":406.3008,"y":-398.5074},{"x":406.299,"y":-398.5431},{"x":406.299,"y":-398.5789},{"x":406.3008,"y":-398.6146},{"x":406.3044,"y":-398.6501},{"x":406.3097,"y":-398.6854},{"x":406.3168,"y":-398.7205},{"x":406.3256,"y":-398.7551},{"x":406.3361,"y":-398.7892},{"x":406.3483,"y":-398.8228},{"x":406.3622,"y":-398.8557},{"x":406.3777,"y":-398.8879},{"x":406.3948,"y":-398.9193},{"x":406.4134,"y":-398.9498},{"x":406.4336,"y":-398.9793},{"x":406.4551,"y":-399.0078},{"x":406.4781,"y":-399.0352},{"x":406.5024,"y":-399.0614},{"x":406.528,"y":-399.0863},{"x":406.5548,"y":-399.1099},{"x":406.5827,"y":-399.1322},{"x":406.6117,"y":-399.1531},{"x":406.6417,"y":-399.1725},{"x":406.6727,"y":-399.1903},{"x":406.7045,"y":-399.2066},{"x":406.737,"y":-399.2213},{"x":406.7703,"y":-399.2344},{"x":406.8042,"y":-399.2458},{"x":406.8386,"y":-399.2554},{"x":406.8734,"y":-399.2634},{"x":406.9086,"y":-399.2696},{"x":406.944,"y":-399.274},{"x":406.9797,"y":-399.2767},{"x":407.0154,"y":-399.2776},{"x":412.4406,"y":-399.2776},{"x":412.4763,"y":-399.2767},{"x":412.512,"y":-399.274},{"x":412.5474,"y":-399.2696},{"x":412.5826,"y":-399.2634},{"x":412.6174,"y":-399.2554},{"x":412.6518,"y":-399.2458},{"x":412.6857,"y":-399.2344},{"x":412.719,"y":-399.2213},{"x":412.7515,"y":-399.2066},{"x":412.7833,"y":-399.1903},{"x":412.8143,"y":-399.1725},{"x":412.8443,"y":-399.1531},{"x":412.8733,"y":-399.1322},{"x":412.9012,"y":-399.1099},{"x":412.928,"y":-399.0863},{"x":412.9536,"y":-399.0614},{"x":412.9779,"y":-399.0352},{"x":413.0009,"y":-399.0078},{"x":413.0224,"y":-398.9793},{"x":413.0426,"y":-398.9498},{"x":413.0612,"y":-398.9193},{"x":413.0783,"y":-398.8879},{"x":413.0938,"y":-398.8557},{"x":413.1077,"y":-398.8228},{"x":413.1199,"y":-398.7892},{"x":413.1304,"y":-398.7551},{"x":413.1392,"y":-398.7205},{"x":413.1463,"y":-398.6854},{"x":413.1516,"y":-398.6501},{"x":413.1552,"y":-398.6146},{"x":413.157,"y":-398.5789},{"x":413.157,"y":-398.5431},{"x":413.1552,"y":-398.5074},{"x":413.1516,"y":-398.4719},{"x":413.1463,"y":-398.4366},{"x":413.1392,"y":-398.4015},{"x":413.1304,"y":-398.3669},{"x":413.1199,"y":-398.3328},{"x":413.1077,"y":-398.2992},{"x":413.0938,"y":-398.2663},{"x":413.0783,"y":-398.2341},{"x":413.0612,"y":-398.2027},{"x":413.0426,"y":-398.1722},{"x":413.0224,"y":-398.1427},{"x":413.0009,"y":-398.1142},{"x":412.9779,"y":-398.0868},{"x":412.9536,"y":-398.0606},{"x":412.928,"y":-398.0357},{"x":412.9012,"y":-398.0121},{"x":412.8733,"y":-397.9898},{"x":412.8443,"y":-397.9689},{"x":412.8143,"y":-397.9495},{"x":412.7833,"y":-397.9317},{"x":412.7515,"y":-397.9154},{"x":412.719,"y":-397.9007},{"x":412.6857,"y":-397.8876},{"x":412.6518,"y":-397.8762},{"x":412.6174,"y":-397.8666},{"x":412.5826,"y":-397.8586},{"x":412.5474,"y":-397.8524},{"x":412.512,"y":-397.848},{"x":412.4763,"y":-397.8453},{"x":412.4406,"y":-397.8444}],"net":"SW0"},{"layers":["F"],"pos":[409.728,-396.002],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.728,"y":-396.002},"polygon":[{"x":407.0154,"y":-395.2854},{"x":406.9797,"y":-395.2863},{"x":406.944,"y":-395.289},{"x":406.9086,"y":-395.2934},{"x":406.8734,"y":-395.2996},{"x":406.8386,"y":-395.3076},{"x":406.8042,"y":-395.3172},{"x":406.7703,"y":-395.3286},{"x":406.737,"y":-395.3417},{"x":406.7045,"y":-395.3564},{"x":406.6727,"y":-395.3727},{"x":406.6417,"y":-395.3905},{"x":406.6117,"y":-395.4099},{"x":406.5827,"y":-395.4308},{"x":406.5548,"y":-395.4531},{"x":406.528,"y":-395.4767},{"x":406.5024,"y":-395.5016},{"x":406.4781,"y":-395.5278},{"x":406.4551,"y":-395.5552},{"x":406.4336,"y":-395.5837},{"x":406.4134,"y":-395.6132},{"x":406.3948,"y":-395.6437},{"x":406.3777,"y":-395.6751},{"x":406.3622,"y":-395.7073},{"x":406.3483,"y":-395.7402},{"x":406.3361,"y":-395.7738},{"x":406.3256,"y":-395.8079},{"x":406.3168,"y":-395.8425},{"x":406.3097,"y":-395.8776},{"x":406.3044,"y":-395.9129},{"x":406.3008,"y":-395.9484},{"x":406.299,"y":-395.9841},{"x":406.299,"y":-396.0199},{"x":406.3008,"y":-396.0556},{"x":406.3044,"y":-396.0911},{"x":406.3097,"y":-396.1264},{"x":406.3168,"y":-396.1615},{"x":406.3256,"y":-396.1961},{"x":406.3361,"y":-396.2302},{"x":406.3483,"y":-396.2638},{"x":406.3622,"y":-396.2967},{"x":406.3777,"y":-396.3289},{"x":406.3948,"y":-396.3603},{"x":406.4134,"y":-396.3908},{"x":406.4336,"y":-396.4203},{"x":406.4551,"y":-396.4488},{"x":406.4781,"y":-396.4762},{"x":406.5024,"y":-396.5024},{"x":406.528,"y":-396.5273},{"x":406.5548,"y":-396.5509},{"x":406.5827,"y":-396.5732},{"x":406.6117,"y":-396.5941},{"x":406.6417,"y":-396.6135},{"x":406.6727,"y":-396.6313},{"x":406.7045,"y":-396.6476},{"x":406.737,"y":-396.6623},{"x":406.7703,"y":-396.6754},{"x":406.8042,"y":-396.6868},{"x":406.8386,"y":-396.6964},{"x":406.8734,"y":-396.7044},{"x":406.9086,"y":-396.7106},{"x":406.944,"y":-396.715},{"x":406.9797,"y":-396.7177},{"x":407.0154,"y":-396.7186},{"x":412.4406,"y":-396.7186},{"x":412.4763,"y":-396.7177},{"x":412.512,"y":-396.715},{"x":412.5474,"y":-396.7106},{"x":412.5826,"y":-396.7044},{"x":412.6174,"y":-396.6964},{"x":412.6518,"y":-396.6868},{"x":412.6857,"y":-396.6754},{"x":412.719,"y":-396.6623},{"x":412.7515,"y":-396.6476},{"x":412.7833,"y":-396.6313},{"x":412.8143,"y":-396.6135},{"x":412.8443,"y":-396.5941},{"x":412.8733,"y":-396.5732},{"x":412.9012,"y":-396.5509},{"x":412.928,"y":-396.5273},{"x":412.9536,"y":-396.5024},{"x":412.9779,"y":-396.4762},{"x":413.0009,"y":-396.4488},{"x":413.0224,"y":-396.4203},{"x":413.0426,"y":-396.3908},{"x":413.0612,"y":-396.3603},{"x":413.0783,"y":-396.3289},{"x":413.0938,"y":-396.2967},{"x":413.1077,"y":-396.2638},{"x":413.1199,"y":-396.2302},{"x":413.1304,"y":-396.1961},{"x":413.1392,"y":-396.1615},{"x":413.1463,"y":-396.1264},{"x":413.1516,"y":-396.0911},{"x":413.1552,"y":-396.0556},{"x":413.157,"y":-396.0199},{"x":413.157,"y":-395.9841},{"x":413.1552,"y":-395.9484},{"x":413.1516,"y":-395.9129},{"x":413.1463,"y":-395.8776},{"x":413.1392,"y":-395.8425},{"x":413.1304,"y":-395.8079},{"x":413.1199,"y":-395.7738},{"x":413.1077,"y":-395.7402},{"x":413.0938,"y":-395.7073},{"x":413.0783,"y":-395.6751},{"x":413.0612,"y":-395.6437},{"x":413.0426,"y":-395.6132},{"x":413.0224,"y":-395.5837},{"x":413.0009,"y":-395.5552},{"x":412.9779,"y":-395.5278},{"x":412.9536,"y":-395.5016},{"x":412.928,"y":-395.4767},{"x":412.9012,"y":-395.4531},{"x":412.8733,"y":-395.4308},{"x":412.8443,"y":-395.4099},{"x":412.8143,"y":-395.3905},{"x":412.7833,"y":-395.3727},{"x":412.7515,"y":-395.3564},{"x":412.719,"y":-395.3417},{"x":412.6857,"y":-395.3286},{"x":412.6518,"y":-395.3172},{"x":412.6174,"y":-395.3076},{"x":412.5826,"y":-395.2996},{"x":412.5474,"y":-395.2934},{"x":412.512,"y":-395.289},{"x":412.4763,"y":-395.2863},{"x":412.4406,"y":-395.2854}],"net":"TXD"},{"layers":["F"],"pos":[409.728,-393.443],"size":[1.4331,6.8583],"angle":-270,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.728,"y":-393.443},"polygon":[{"x":407.0154,"y":-392.7264},{"x":406.9797,"y":-392.7273},{"x":406.944,"y":-392.73},{"x":406.9086,"y":-392.7344},{"x":406.8734,"y":-392.7406},{"x":406.8386,"y":-392.7486},{"x":406.8042,"y":-392.7582},{"x":406.7703,"y":-392.7696},{"x":406.737,"y":-392.7827},{"x":406.7045,"y":-392.7974},{"x":406.6727,"y":-392.8137},{"x":406.6417,"y":-392.8315},{"x":406.6117,"y":-392.8509},{"x":406.5827,"y":-392.8718},{"x":406.5548,"y":-392.8941},{"x":406.528,"y":-392.9177},{"x":406.5024,"y":-392.9426},{"x":406.4781,"y":-392.9688},{"x":406.4551,"y":-392.9962},{"x":406.4336,"y":-393.0247},{"x":406.4134,"y":-393.0542},{"x":406.3948,"y":-393.0847},{"x":406.3777,"y":-393.1161},{"x":406.3622,"y":-393.1483},{"x":406.3483,"y":-393.1812},{"x":406.3361,"y":-393.2148},{"x":406.3256,"y":-393.2489},{"x":406.3168,"y":-393.2835},{"x":406.3097,"y":-393.3186},{"x":406.3044,"y":-393.3539},{"x":406.3008,"y":-393.3894},{"x":406.299,"y":-393.4251},{"x":406.299,"y":-393.4609},{"x":406.3008,"y":-393.4966},{"x":406.3044,"y":-393.5321},{"x":406.3097,"y":-393.5674},{"x":406.3168,"y":-393.6025},{"x":406.3256,"y":-393.6371},{"x":406.3361,"y":-393.6712},{"x":406.3483,"y":-393.7048},{"x":406.3622,"y":-393.7377},{"x":406.3777,"y":-393.7699},{"x":406.3948,"y":-393.8013},{"x":406.4134,"y":-393.8318},{"x":406.4336,"y":-393.8613},{"x":406.4551,"y":-393.8898},{"x":406.4781,"y":-393.9172},{"x":406.5024,"y":-393.9434},{"x":406.528,"y":-393.9683},{"x":406.5548,"y":-393.9919},{"x":406.5827,"y":-394.0142},{"x":406.6117,"y":-394.0351},{"x":406.6417,"y":-394.0545},{"x":406.6727,"y":-394.0723},{"x":406.7045,"y":-394.0886},{"x":406.737,"y":-394.1033},{"x":406.7703,"y":-394.1164},{"x":406.8042,"y":-394.1278},{"x":406.8386,"y":-394.1374},{"x":406.8734,"y":-394.1454},{"x":406.9086,"y":-394.1516},{"x":406.944,"y":-394.156},{"x":406.9797,"y":-394.1587},{"x":407.0154,"y":-394.1596},{"x":412.4406,"y":-394.1596},{"x":412.4763,"y":-394.1587},{"x":412.512,"y":-394.156},{"x":412.5474,"y":-394.1516},{"x":412.5826,"y":-394.1454},{"x":412.6174,"y":-394.1374},{"x":412.6518,"y":-394.1278},{"x":412.6857,"y":-394.1164},{"x":412.719,"y":-394.1033},{"x":412.7515,"y":-394.0886},{"x":412.7833,"y":-394.0723},{"x":412.8143,"y":-394.0545},{"x":412.8443,"y":-394.0351},{"x":412.8733,"y":-394.0142},{"x":412.9012,"y":-393.9919},{"x":412.928,"y":-393.9683},{"x":412.9536,"y":-393.9434},{"x":412.9779,"y":-393.9172},{"x":413.0009,"y":-393.8898},{"x":413.0224,"y":-393.8613},{"x":413.0426,"y":-393.8318},{"x":413.0612,"y":-393.8013},{"x":413.0783,"y":-393.7699},{"x":413.0938,"y":-393.7377},{"x":413.1077,"y":-393.7048},{"x":413.1199,"y":-393.6712},{"x":413.1304,"y":-393.6371},{"x":413.1392,"y":-393.6025},{"x":413.1463,"y":-393.5674},{"x":413.1516,"y":-393.5321},{"x":413.1552,"y":-393.4966},{"x":413.157,"y":-393.4609},{"x":413.157,"y":-393.4251},{"x":413.1552,"y":-393.3894},{"x":413.1516,"y":-393.3539},{"x":413.1463,"y":-393.3186},{"x":413.1392,"y":-393.2835},{"x":413.1304,"y":-393.2489},{"x":413.1199,"y":-393.2148},{"x":413.1077,"y":-393.1812},{"x":413.0938,"y":-393.1483},{"x":413.0783,"y":-393.1161},{"x":413.0612,"y":-393.0847},{"x":413.0426,"y":-393.0542},{"x":413.0224,"y":-393.0247},{"x":413.0009,"y":-392.9962},{"x":412.9779,"y":-392.9688},{"x":412.9536,"y":-392.9426},{"x":412.928,"y":-392.9177},{"x":412.9012,"y":-392.8941},{"x":412.8733,"y":-392.8718},{"x":412.8443,"y":-392.8509},{"x":412.8143,"y":-392.8315},{"x":412.7833,"y":-392.8137},{"x":412.7515,"y":-392.7974},{"x":412.719,"y":-392.7827},{"x":412.6857,"y":-392.7696},{"x":412.6518,"y":-392.7582},{"x":412.6174,"y":-392.7486},{"x":412.5826,"y":-392.7406},{"x":412.5474,"y":-392.7344},{"x":412.512,"y":-392.73},{"x":412.4763,"y":-392.7273},{"x":412.4406,"y":-392.7264}],"net":"RXD"}],"drawings":[],"layer":"F"},{"ref":"R6","center":[397.9675,-384.683],"bbox":{"pos":[397.9675,-384.683],"angle":180,"relpos":[-6.539799999999957,-3.61059999999992],"size":[13.079700000000003,7.22120000000001]},"pads":[{"layers":["F"],"pos":[394.557,-384.683],"size":[4.4588,5.4213],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":394.557,"y":-384.683},"polygon":[{"x":396.7864,"y":-381.9723},{"x":392.3276,"y":-381.9723},{"x":392.3276,"y":-387.3936},{"x":396.7864,"y":-387.3936}],"net":"VOLP"},{"layers":["F"],"pos":[401.378,-384.683],"size":[4.4588,5.4213],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":401.378,"y":-384.683},"polygon":[{"x":403.6074,"y":-381.9723},{"x":399.1486,"y":-381.9723},{"x":399.1486,"y":-387.3936},{"x":403.6074,"y":-387.3936}],"net":"$1N46470"}],"drawings":[],"layer":"F"},{"ref":"R10","center":[385.8266,-381.7537],"bbox":{"pos":[385.8266,-381.7537],"angle":90,"relpos":[-6.539899999999989,-3.6105999999999767],"size":[13.079800000000034,7.22120000000001]},"pads":[{"layers":["F"],"pos":[385.827,-385.164],"size":[4.4588,5.4213],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":385.827,"y":-385.164},"polygon":[{"x":383.1164,"y":-382.9346},{"x":383.1164,"y":-387.3934},{"x":388.5377,"y":-387.3934},{"x":388.5377,"y":-382.9346}],"net":"VOLP"},{"layers":["F"],"pos":[385.827,-378.343],"size":[4.4588,5.4213],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":385.827,"y":-378.343},"polygon":[{"x":383.1164,"y":-376.1136},{"x":383.1164,"y":-380.5724},{"x":388.5377,"y":-380.5724},{"x":388.5377,"y":-376.1136}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"Q14","center":[405.1739,-358.7032],"bbox":{"pos":[405.1739,-358.7032],"angle":180,"relpos":[-6.479999999999961,-9.760000000000048],"size":[13,14.400000000000034]},"pads":[{"layers":["F"],"pos":[409.014,-361.713],"size":[1.38,2.76],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":409.014,"y":-361.713},"polygon":[{"x":409.704,"y":-360.333},{"x":408.324,"y":-360.333},{"x":408.324,"y":-363.093},{"x":409.704,"y":-363.093}],"net":"VCC"},{"layers":["F"],"pos":[406.454,-361.713],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":406.454,"y":-361.713},"polygon":[{"x":407.144,"y":-360.333},{"x":405.764,"y":-360.333},{"x":405.764,"y":-363.093},{"x":407.144,"y":-363.093}],"net":"VCC"},{"layers":["F"],"pos":[403.894,-361.713],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":403.894,"y":-361.713},"polygon":[{"x":404.584,"y":-360.333},{"x":403.204,"y":-360.333},{"x":403.204,"y":-363.093},{"x":404.584,"y":-363.093}],"net":"VCC"},{"layers":["F"],"pos":[401.334,-361.713],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":401.334,"y":-361.713},"polygon":[{"x":402.024,"y":-360.333},{"x":400.644,"y":-360.333},{"x":400.644,"y":-363.093},{"x":402.024,"y":-363.093}],"net":"$1N49187"}],"drawings":[],"layer":"F"},{"ref":"Q1","center":[391.5096,-358.6828],"bbox":{"pos":[391.5096,-358.6828],"angle":180,"relpos":[-6.479999999999961,-9.760000000000048],"size":[13,14.399969999999996]},"pads":[{"layers":["F"],"pos":[395.35,-361.693],"size":[1.38,2.76],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":395.35,"y":-361.693},"polygon":[{"x":396.04,"y":-360.313},{"x":394.66,"y":-360.313},{"x":394.66,"y":-363.073},{"x":396.04,"y":-363.073}],"net":"VCC"},{"layers":["F"],"pos":[392.79,-361.693],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":392.79,"y":-361.693},"polygon":[{"x":393.48,"y":-360.313},{"x":392.1,"y":-360.313},{"x":392.1,"y":-363.073},{"x":393.48,"y":-363.073}],"net":"VCC"},{"layers":["F"],"pos":[390.23,-361.693],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":390.23,"y":-361.693},"polygon":[{"x":390.92,"y":-360.313},{"x":389.54,"y":-360.313},{"x":389.54,"y":-363.073},{"x":390.92,"y":-363.073}],"net":"VCC"},{"layers":["F"],"pos":[387.67,-361.693],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":387.67,"y":-361.693},"polygon":[{"x":388.36,"y":-360.313},{"x":386.98,"y":-360.313},{"x":386.98,"y":-363.073},{"x":388.36,"y":-363.073}],"net":"$1N49187"}],"drawings":[],"layer":"F"},{"ref":"U30","center":[473.6217,-402.99],"bbox":{"pos":[473.6217,-402.99],"angle":90,"relpos":[-18.21999999999997,-13.90969999999993],"size":[31.534999999999968,27.810000000000002]},"pads":[{"layers":["F"],"pos":[482.672,-414.24],"size":[9.7,4.13],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":482.672,"y":-414.24},"polygon":[{"x":480.607,"y":-409.39},{"x":480.607,"y":-419.09},{"x":484.737,"y":-419.09},{"x":484.737,"y":-409.39}],"net":"GND"},{"layers":["F"],"pos":[473.622,-414.24],"size":[9.7,4.13],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":473.622,"y":-414.24},"polygon":[{"x":471.557,"y":-409.39},{"x":471.557,"y":-419.09},{"x":475.687,"y":-419.09},{"x":475.687,"y":-409.39}],"net":"+1.5V"},{"layers":["F"],"pos":[464.562,-414.24],"size":[9.7,4.13],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":464.562,"y":-414.24},"polygon":[{"x":462.497,"y":-409.39},{"x":462.497,"y":-419.09},{"x":466.627,"y":-419.09},{"x":466.627,"y":-409.39}],"net":"+5V"},{"layers":["F"],"pos":[473.622,-391.74],"size":[9.7,13.94],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":473.622,"y":-391.74},"polygon":[{"x":466.652,"y":-386.89},{"x":466.652,"y":-396.59},{"x":480.592,"y":-396.59},{"x":480.592,"y":-386.89}],"net":"+1.5V"}],"drawings":[],"layer":"F"},{"ref":"Q2","center":[356.7328,-328.4139],"bbox":{"pos":[356.7328,-328.4139],"angle":180,"relpos":[-6.479999999999961,-9.759999999999934],"size":[13,14.400049999999965]},"pads":[{"layers":["F"],"pos":[360.573,-331.424],"size":[1.38,2.76],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":360.573,"y":-331.424},"polygon":[{"x":361.263,"y":-330.044},{"x":359.883,"y":-330.044},{"x":359.883,"y":-332.804},{"x":361.263,"y":-332.804}],"net":"GND"},{"layers":["F"],"pos":[358.013,-331.424],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":358.013,"y":-331.424},"polygon":[{"x":358.703,"y":-330.044},{"x":357.323,"y":-330.044},{"x":357.323,"y":-332.804},{"x":358.703,"y":-332.804}],"net":"GND"},{"layers":["F"],"pos":[355.453,-331.424],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":355.453,"y":-331.424},"polygon":[{"x":356.143,"y":-330.044},{"x":354.763,"y":-330.044},{"x":354.763,"y":-332.804},{"x":356.143,"y":-332.804}],"net":"GND"},{"layers":["F"],"pos":[352.893,-331.424],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":352.893,"y":-331.424},"polygon":[{"x":353.583,"y":-330.044},{"x":352.203,"y":-330.044},{"x":352.203,"y":-332.804},{"x":353.583,"y":-332.804}],"net":"HEAT"}],"drawings":[],"layer":"F"},{"ref":"R1","center":[330.9753,-338.1428],"bbox":{"pos":[330.9753,-338.1428],"angle":90,"relpos":[-6.539900000000046,-3.6105999999999767],"size":[13.079800000000034,7.221199999999953]},"pads":[{"layers":["F"],"pos":[330.975,-341.553],"size":[4.4588,5.4213],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":330.975,"y":-341.553},"polygon":[{"x":328.2644,"y":-339.3236},{"x":328.2644,"y":-343.7824},{"x":333.6857,"y":-343.7824},{"x":333.6857,"y":-339.3236}],"net":"+3.3V"},{"layers":["F"],"pos":[330.975,-334.732],"size":[4.4588,5.4213],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":330.975,"y":-334.732},"polygon":[{"x":328.2644,"y":-332.5026},{"x":328.2644,"y":-336.9614},{"x":333.6857,"y":-336.9614},{"x":333.6857,"y":-332.5026}],"net":"SW0"}],"drawings":[],"layer":"F"},{"ref":"R3","center":[451.5449,-329.5512],"bbox":{"pos":[451.5449,-329.5512],"angle":180,"relpos":[-6.539899999999932,-3.61059999999992],"size":[13.079799999999977,7.22120000000001]},"pads":[{"layers":["F"],"pos":[448.135,-329.551],"size":[4.4588,5.4213],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":448.135,"y":-329.551},"polygon":[{"x":450.3644,"y":-326.8403},{"x":445.9056,"y":-326.8403},{"x":445.9056,"y":-332.2616},{"x":450.3644,"y":-332.2616}],"net":"+3.3V"},{"layers":["F"],"pos":[454.955,-329.551],"size":[4.4588,5.4213],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":454.955,"y":-329.551},"polygon":[{"x":457.1844,"y":-326.8403},{"x":452.7256,"y":-326.8403},{"x":452.7256,"y":-332.2616},{"x":457.1844,"y":-332.2616}],"net":"SW1"}],"drawings":[],"layer":"F"},{"ref":"R4","center":[322.7351,-338.1428],"bbox":{"pos":[322.7351,-338.1428],"angle":90,"relpos":[-6.539900000000046,-3.61059999999992],"size":[13.079800000000034,7.22120000000001]},"pads":[{"layers":["F"],"pos":[322.735,-341.553],"size":[4.4588,5.4213],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":322.735,"y":-341.553},"polygon":[{"x":320.0244,"y":-339.3236},{"x":320.0244,"y":-343.7824},{"x":325.4457,"y":-343.7824},{"x":325.4457,"y":-339.3236}],"net":"$1N45830"},{"layers":["F"],"pos":[322.735,-334.732],"size":[4.4588,5.4213],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":322.735,"y":-334.732},"polygon":[{"x":320.0244,"y":-332.5026},{"x":320.0244,"y":-336.9614},{"x":325.4457,"y":-336.9614},{"x":325.4457,"y":-332.5026}],"net":"SW0"}],"drawings":[],"layer":"F"},{"ref":"C2","center":[326.8552,-349.1664],"bbox":{"pos":[326.8552,-349.1664],"angle":0,"relpos":[-7.73070000000007,-3.5575000000000045],"size":[15.461400000000026,7.115000000000123]},"pads":[{"layers":["F"],"pos":[330.91,-349.166],"size":[5.5512,5.315],"angle":0,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":330.91,"y":-349.166},"polygon":[{"x":328.1344,"y":-351.8235},{"x":333.6856,"y":-351.8235},{"x":333.6856,"y":-346.5085},{"x":328.1344,"y":-346.5085}],"net":"GND"},{"layers":["F"],"pos":[322.8,-349.166],"size":[5.5512,5.315],"angle":0,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":322.8,"y":-349.166},"polygon":[{"x":320.0244,"y":-351.8235},{"x":325.5756,"y":-351.8235},{"x":325.5756,"y":-346.5085},{"x":320.0244,"y":-346.5085}],"net":"$1N45830"}],"drawings":[],"layer":"F"},{"ref":"R11","center":[451.5449,-321.311],"bbox":{"pos":[451.5449,-321.311],"angle":180,"relpos":[-6.539899999999932,-3.6106000000000336],"size":[13.079799999999977,7.22120000000001]},"pads":[{"layers":["F"],"pos":[448.135,-321.311],"size":[4.4588,5.4213],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":448.135,"y":-321.311},"polygon":[{"x":450.3644,"y":-318.6003},{"x":445.9056,"y":-318.6003},{"x":445.9056,"y":-324.0216},{"x":450.3644,"y":-324.0216}],"net":"$1N45829"},{"layers":["F"],"pos":[454.955,-321.311],"size":[4.4588,5.4213],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":454.955,"y":-321.311},"polygon":[{"x":457.1844,"y":-318.6003},{"x":452.7256,"y":-318.6003},{"x":452.7256,"y":-324.0216},{"x":457.1844,"y":-324.0216}],"net":"SW1"}],"drawings":[],"layer":"F"},{"ref":"C3","center":[440.5213,-325.4311],"bbox":{"pos":[440.5213,-325.4311],"angle":90,"relpos":[-7.730700000000013,-3.557549999999992],"size":[15.461450000000013,7.1150499999999965]},"pads":[{"layers":["F"],"pos":[440.521,-329.486],"size":[5.5512,5.315],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":440.521,"y":-329.486},"polygon":[{"x":437.8635,"y":-326.7104},{"x":437.8635,"y":-332.2616},{"x":443.1785,"y":-332.2616},{"x":443.1785,"y":-326.7104}],"net":"GND"},{"layers":["F"],"pos":[440.521,-321.376],"size":[5.5512,5.315],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":440.521,"y":-321.376},"polygon":[{"x":437.8635,"y":-318.6004},{"x":437.8635,"y":-324.1516},{"x":443.1785,"y":-324.1516},{"x":443.1785,"y":-318.6004}],"net":"$1N45829"}],"drawings":[],"layer":"F"},{"ref":"R13","center":[398.0313,-376.809],"bbox":{"pos":[398.0313,-376.809],"angle":180,"relpos":[-6.539899999999932,-3.6106000000000904],"size":[13.079799999999977,7.22120000000001]},"pads":[{"layers":["F"],"pos":[394.621,-376.809],"size":[4.4588,5.4213],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":394.621,"y":-376.809},"polygon":[{"x":396.8504,"y":-374.0984},{"x":392.3916,"y":-374.0984},{"x":392.3916,"y":-379.5196},{"x":396.8504,"y":-379.5196}],"net":"VCC"},{"layers":["F"],"pos":[401.442,-376.809],"size":[4.4588,5.4213],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":401.442,"y":-376.809},"polygon":[{"x":403.6714,"y":-374.0984},{"x":399.2126,"y":-374.0984},{"x":399.2126,"y":-379.5196},{"x":403.6714,"y":-379.5196}],"net":"$1N46470"}],"drawings":[],"layer":"F"},{"ref":"R14","center":[422.9339,-423.5894],"bbox":{"pos":[422.9339,-423.5894],"angle":90,"relpos":[-6.539899999999989,-3.6106000000000336],"size":[13.079799999999977,7.22120000000001]},"pads":[{"layers":["F"],"pos":[422.934,-427],"size":[4.4588,5.4213],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":422.934,"y":-427},"polygon":[{"x":420.2234,"y":-424.7706},{"x":420.2234,"y":-429.2294},{"x":425.6447,"y":-429.2294},{"x":425.6447,"y":-424.7706}],"net":"TEMP0"},{"layers":["F"],"pos":[422.934,-420.179],"size":[4.4588,5.4213],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":422.934,"y":-420.179},"polygon":[{"x":420.2234,"y":-417.9496},{"x":420.2234,"y":-422.4084},{"x":425.6447,"y":-422.4084},{"x":425.6447,"y":-417.9496}],"net":"+1.5V"}],"drawings":[],"layer":"F"},{"ref":"C4","center":[465.5509,-426.4152],"bbox":{"pos":[465.5509,-426.4152],"angle":180,"relpos":[-7.73070000000007,-3.5574999999999477],"size":[15.461450000000013,7.115000000000009]},"pads":[{"layers":["F"],"pos":[461.496,-426.415],"size":[5.5512,5.315],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":461.496,"y":-426.415},"polygon":[{"x":464.2716,"y":-423.7575},{"x":458.7204,"y":-423.7575},{"x":458.7204,"y":-429.0725},{"x":464.2716,"y":-429.0725}],"net":"TEMP0"},{"layers":["F"],"pos":[469.606,-426.415],"size":[5.5512,5.315],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":469.606,"y":-426.415},"polygon":[{"x":472.3816,"y":-423.7575},{"x":466.8304,"y":-423.7575},{"x":466.8304,"y":-429.0725},{"x":472.3816,"y":-429.0725}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"C9","center":[430.9053,-423.6593],"bbox":{"pos":[430.9053,-423.6593],"angle":90,"relpos":[-7.730700000000013,-3.557549999999992],"size":[15.461400000000026,7.115050000000053]},"pads":[{"layers":["F"],"pos":[430.905,-427.714],"size":[5.5512,5.315],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":430.905,"y":-427.714},"polygon":[{"x":428.2475,"y":-424.9384},{"x":428.2475,"y":-430.4896},{"x":433.5625,"y":-430.4896},{"x":433.5625,"y":-424.9384}],"net":"GND"},{"layers":["F"],"pos":[430.905,-419.604],"size":[5.5512,5.315],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":430.905,"y":-419.604},"polygon":[{"x":428.2475,"y":-416.8284},{"x":428.2475,"y":-422.3796},{"x":433.5625,"y":-422.3796},{"x":433.5625,"y":-416.8284}],"net":"+3.3V"}],"drawings":[],"layer":"F"},{"ref":"C1","center":[428.1704,-405.1554],"bbox":{"pos":[428.1704,-405.1554],"angle":90,"relpos":[-7.730700000000013,-3.5574999999999477],"size":[15.46140000000014,7.11502999999999]},"pads":[{"layers":["F"],"pos":[428.17,-409.21],"size":[5.5512,5.315],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":428.17,"y":-409.21},"polygon":[{"x":425.5125,"y":-406.4344},{"x":425.5125,"y":-411.9856},{"x":430.8275,"y":-411.9856},{"x":430.8275,"y":-406.4344}],"net":"+5V"},{"layers":["F"],"pos":[428.17,-401.1],"size":[5.5512,5.315],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":428.17,"y":-401.1},"polygon":[{"x":425.5125,"y":-398.3244},{"x":425.5125,"y":-403.8756},{"x":430.8275,"y":-403.8756},{"x":430.8275,"y":-398.3244}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"C11","center":[462.795,-388.4231],"bbox":{"pos":[462.795,-388.4231],"angle":90,"relpos":[-7.730699999999956,-3.5575500000001057],"size":[15.461450000000013,7.115050000000053]},"pads":[{"layers":["F"],"pos":[462.795,-392.478],"size":[5.5512,5.315],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":462.795,"y":-392.478},"polygon":[{"x":460.1375,"y":-389.7024},{"x":460.1375,"y":-395.2536},{"x":465.4525,"y":-395.2536},{"x":465.4525,"y":-389.7024}],"net":"+1.5V"},{"layers":["F"],"pos":[462.795,-384.368],"size":[5.5512,5.315],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":462.795,"y":-384.368},"polygon":[{"x":460.1375,"y":-381.5924},{"x":460.1375,"y":-387.1436},{"x":465.4525,"y":-387.1436},{"x":465.4525,"y":-381.5924}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"Q3","center":[343.1502,-328.4139],"bbox":{"pos":[343.1502,-328.4139],"angle":180,"relpos":[-6.480000000000075,-9.759999999999934],"size":[13,14.400049999999965]},"pads":[{"layers":["F"],"pos":[346.99,-331.424],"size":[1.38,2.76],"angle":-180,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":346.99,"y":-331.424},"polygon":[{"x":347.68,"y":-330.044},{"x":346.3,"y":-330.044},{"x":346.3,"y":-332.804},{"x":347.68,"y":-332.804}],"net":"GND"},{"layers":["F"],"pos":[344.43,-331.424],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":344.43,"y":-331.424},"polygon":[{"x":345.12,"y":-330.044},{"x":343.74,"y":-330.044},{"x":343.74,"y":-332.804},{"x":345.12,"y":-332.804}],"net":"GND"},{"layers":["F"],"pos":[341.87,-331.424],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":341.87,"y":-331.424},"polygon":[{"x":342.56,"y":-330.044},{"x":341.18,"y":-330.044},{"x":341.18,"y":-332.804},{"x":342.56,"y":-332.804}],"net":"GND"},{"layers":["F"],"pos":[339.31,-331.424],"size":[1.38,2.76],"angle":-180,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":339.31,"y":-331.424},"polygon":[{"x":340,"y":-330.044},{"x":338.62,"y":-330.044},{"x":338.62,"y":-332.804},{"x":340,"y":-332.804}],"net":"HEAT"}],"drawings":[],"layer":"F"},{"ref":"D6","center":[453.1493,-398.8602],"bbox":{"pos":[453.1493,-398.8602],"angle":90,"relpos":[-11.41519999999997,-5.509999999999991],"size":[22.829999999999984,11.019999999999982]},"pads":[{"layers":["F"],"pos":[453.149,-390.99],"size":[7.87,7.09],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":453.149,"y":-390.99},"polygon":[{"x":449.604,"y":-387.055},{"x":449.604,"y":-394.925},{"x":456.694,"y":-394.925},{"x":456.694,"y":-387.055}],"net":"$1N27582"},{"layers":["F"],"pos":[453.149,-406.73],"size":[7.87,7.09],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":453.149,"y":-406.73},"polygon":[{"x":449.604,"y":-402.795},{"x":449.604,"y":-410.665},{"x":456.694,"y":-410.665},{"x":456.694,"y":-402.795}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"CONN-TH_X8821WR-02S-46SN","center":[465.5509,-446.4939],"bbox":{"pos":[465.5509,-446.4939],"angle":270,"relpos":[-14.76400000000001,-3.7402499999999463],"size":[29.52780000000007,31.299549999999954]},"pads":[{"layers":["F","B"],"pos":[465.551,-441.572],"size":[0,0],"angle":-90,"shape":"polygon","type":"th","drillsize":[4.3308,4.3508],"drillshape":"oblong","holeCenterPoint":{"x":465.551,"y":-441.572},"polygon":[{"x":469.2915,"y":-441.5719},{"x":468.9211,"y":-439.9491},{"x":467.8833,"y":-438.6477},{"x":466.3836,"y":-437.9255},{"x":464.7191,"y":-437.9255},{"x":463.2194,"y":-438.6477},{"x":462.1816,"y":-439.9491},{"x":461.8112,"y":-441.5719},{"x":461.8112,"y":-441.5719},{"x":462.1816,"y":-443.1947},{"x":463.2194,"y":-444.4961},{"x":464.7191,"y":-445.2183},{"x":466.3836,"y":-445.2183},{"x":467.8833,"y":-444.4961},{"x":468.9211,"y":-443.1947},{"x":469.2915,"y":-441.5719}],"net":"TEMP0"},{"layers":["F","B"],"pos":[465.551,-451.415],"size":[7.4803,7.4803],"angle":-90,"pin1":1,"shape":"oval","type":"th","drillsize":[4.3308,4.3508],"drillshape":"oblong","holeCenterPoint":{"x":465.551,"y":-451.41499999999996},"polygon":[],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"CONN-TH_X8821WR-04S-46SN","center":[337.4015,-444.0925],"bbox":{"pos":[337.4015,-444.0925],"angle":90,"relpos":[-24.606499999999983,-3.7396499999999833],"size":[49.212800000000016,31.29875000000004]},"pads":[{"layers":["F","B"],"pos":[337.402,-458.857],"size":[0,0],"angle":-270,"shape":"polygon","type":"th","drillsize":[4.3308,4.3508],"drillshape":"oblong","holeCenterPoint":{"x":337.402,"y":-458.85699999999997},"polygon":[{"x":333.6618,"y":-458.8569},{"x":334.0321,"y":-460.4797},{"x":335.07,"y":-461.7811},{"x":336.5696,"y":-462.5033},{"x":338.2342,"y":-462.5033},{"x":339.7339,"y":-461.7811},{"x":340.7717,"y":-460.4797},{"x":341.1421,"y":-458.8569},{"x":341.1421,"y":-458.8569},{"x":340.7717,"y":-457.2342},{"x":339.7339,"y":-455.9328},{"x":338.2342,"y":-455.2106},{"x":336.5696,"y":-455.2106},{"x":335.07,"y":-455.9328},{"x":334.0321,"y":-457.2342},{"x":333.6618,"y":-458.8569}],"net":"GND"},{"layers":["F","B"],"pos":[337.402,-449.014],"size":[7.4803,7.4803],"angle":-270,"shape":"oval","type":"th","drillsize":[4.3308,4.3508],"drillshape":"oblong","holeCenterPoint":{"x":337.402,"y":-449.014},"polygon":[],"net":"+3.3V"},{"layers":["F","B"],"pos":[337.402,-439.172],"size":[0,0],"angle":-270,"shape":"polygon","type":"th","drillsize":[4.3308,4.3508],"drillshape":"oblong","holeCenterPoint":{"x":337.402,"y":-439.172},"polygon":[{"x":333.6619,"y":-439.172},{"x":334.0322,"y":-440.7948},{"x":335.0701,"y":-442.0962},{"x":336.5697,"y":-442.8184},{"x":338.2343,"y":-442.8184},{"x":339.734,"y":-442.0962},{"x":340.7718,"y":-440.7948},{"x":341.1422,"y":-439.172},{"x":341.1422,"y":-439.172},{"x":340.7718,"y":-437.5493},{"x":339.734,"y":-436.2479},{"x":338.2343,"y":-435.5257},{"x":336.5697,"y":-435.5257},{"x":335.0701,"y":-436.2479},{"x":334.0322,"y":-437.5493},{"x":333.6619,"y":-439.172}],"net":"SCL"},{"layers":["F","B"],"pos":[337.402,-429.329],"size":[7.4803,7.4803],"angle":-270,"pin1":1,"shape":"oval","type":"th","drillsize":[4.3308,4.3508],"drillshape":"oblong","holeCenterPoint":{"x":337.402,"y":-429.329},"polygon":[],"net":"SDA"}],"drawings":[],"layer":"F"},{"ref":"大焊盘","center":[368.8974,-313.817],"bbox":{"pos":[368.8974,-313.817],"angle":0,"relpos":[-4.92165,-4.921249999999986],"size":[9.842499999999973,9.842499999999973]},"pads":[{"layers":["F","B"],"pos":[368.897,-313.817],"size":[9.8425,9.8425],"angle":0,"pin1":1,"shape":"oval","type":"th","drillsize":[4.7244,4.7244],"drillshape":"oblong","holeCenterPoint":{"x":368.897,"y":-313.817},"polygon":[],"net":"$1N44398"}],"drawings":[],"layer":"F"},{"ref":"大焊盘","center":[427.9526,-313.817],"bbox":{"pos":[427.9526,-313.817],"angle":0,"relpos":[-4.92085000000003,-4.921249999999986],"size":[9.842499999999973,9.842499999999973]},"pads":[{"layers":["F","B"],"pos":[427.953,-313.817],"size":[9.8425,9.8425],"angle":0,"pin1":1,"shape":"oval","type":"th","drillsize":[4.7244,4.7244],"drillshape":"oblong","holeCenterPoint":{"x":427.953,"y":-313.817},"polygon":[],"net":"VCC"}],"drawings":[],"layer":"F"},{"ref":"CONN-TH_X8821WR-02S-46SN","center":[344.684,-414.4073],"bbox":{"pos":[344.684,-414.4073],"angle":0,"relpos":[-14.764100000000042,-3.73984999999999],"size":[29.52789999999999,31.299149999999997]},"pads":[{"layers":["F","B"],"pos":[349.606,-414.407],"size":[0,0],"angle":-180,"shape":"polygon","type":"th","drillsize":[4.3308,4.3508],"drillshape":"oblong","holeCenterPoint":{"x":349.606,"y":-414.407},"polygon":[{"x":349.6065,"y":-418.1475},{"x":351.2292,"y":-417.7771},{"x":352.5306,"y":-416.7393},{"x":353.2528,"y":-415.2396},{"x":353.2528,"y":-413.5751},{"x":352.5306,"y":-412.0754},{"x":351.2292,"y":-411.0376},{"x":349.6065,"y":-410.6672},{"x":349.6065,"y":-410.6672},{"x":347.9837,"y":-411.0376},{"x":346.6823,"y":-412.0754},{"x":345.9601,"y":-413.5751},{"x":345.9601,"y":-415.2396},{"x":346.6823,"y":-416.7393},{"x":347.9837,"y":-417.7771},{"x":349.6065,"y":-418.1475}],"net":"GND"},{"layers":["F","B"],"pos":[339.762,-414.407],"size":[7.4803,7.4803],"angle":-180,"pin1":1,"shape":"oval","type":"th","drillsize":[4.3308,4.3508],"drillshape":"oblong","holeCenterPoint":{"x":339.762,"y":-414.407},"polygon":[],"net":"TEMP1"}],"drawings":[],"layer":"F"},{"ref":"C5","center":[323.8189,-407.4388],"bbox":{"pos":[323.8189,-407.4388],"angle":90,"relpos":[-7.730799999999988,-3.557549999999992],"size":[15.461450000000013,7.1150499999999965]},"pads":[{"layers":["F"],"pos":[323.819,-411.494],"size":[5.5512,5.315],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":323.819,"y":-411.494},"polygon":[{"x":321.1615,"y":-408.7184},{"x":321.1615,"y":-414.2696},{"x":326.4765,"y":-414.2696},{"x":326.4765,"y":-408.7184}],"net":"TEMP1"},{"layers":["F"],"pos":[323.819,-403.384],"size":[5.5512,5.315],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":323.819,"y":-403.384},"polygon":[{"x":321.1615,"y":-400.6084},{"x":321.1615,"y":-406.1596},{"x":326.4765,"y":-406.1596},{"x":326.4765,"y":-400.6084}],"net":"GND"}],"drawings":[],"layer":"F"},{"ref":"R16","center":[324.0157,-392.557],"bbox":{"pos":[324.0157,-392.557],"angle":90,"relpos":[-6.539899999999989,-3.61059999999992],"size":[13.079799999999977,7.22120000000001]},"pads":[{"layers":["F"],"pos":[324.016,-395.967],"size":[4.4588,5.4213],"angle":-90,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":324.016,"y":-395.967},"polygon":[{"x":321.3054,"y":-393.7376},{"x":321.3054,"y":-398.1964},{"x":326.7267,"y":-398.1964},{"x":326.7267,"y":-393.7376}],"net":"TEMP1"},{"layers":["F"],"pos":[324.016,-389.147],"size":[4.4588,5.4213],"angle":-90,"pin1":1,"shape":"rect","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":324.016,"y":-389.147},"polygon":[{"x":321.3054,"y":-386.9176},{"x":321.3054,"y":-391.3764},{"x":326.7267,"y":-391.3764},{"x":326.7267,"y":-386.9176}],"net":"+1.5V"}],"drawings":[],"layer":"F"}],"metadata":{"title":"PCB1.pcbdoc","revision":"0","company":"Unknown Company","date":"2022-09-24"},"tracks":{"F":[{"type":"polyline","net":"SCL","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M409.728,-406.2375 415.043,-406.2375"},{"type":"polyline","net":"SDA","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M404.4131,-408.7975 409.728,-408.7975"},{"type":"polyline","net":"TEMP1","start":[0,0],"end":[0,0],"width":1.37795,"svgpath":"M409.728,-413.9155 415.2398,-413.9155"},{"type":"polyline","net":"TEMP1","start":[0,0],"end":[0,0],"width":3.93701,"svgpath":"M324.0157,-395.9673 329.0008,-395.9673 331.496,-398.4625 331.496,-414.2306 331.6727,-414.4073"},{"type":"polyline","net":"TEMP1","start":[0,0],"end":[0,0],"width":3.93701,"svgpath":"M323.8189,-411.4937 326.7324,-414.4073 331.6727,-414.4073 339.7625,-414.4073"},{"type":"polyline","net":"+1.5V","start":[0,0],"end":[0,0],"width":3.93701,"svgpath":"M324.0157,-389.1467 329.9212,-389.1467"},{"type":"polyline","net":"TEMP0","start":[0,0],"end":[0,0],"width":1.37795,"svgpath":"M409.728,-416.4745 412.5001,-416.4745 415.9447,-419.9191 415.9447,-425.0372 417.9072,-426.9997 422.9339,-426.9997"},{"type":"polyline","net":"TEMP0","start":[0,0],"end":[0,0],"width":3.93701,"svgpath":"M422.9339,-426.9997 422.9339,-434.1918 430.3147,-441.5726 465.5509,-441.5726 465.5509,-434.6829 461.4959,-430.6279 461.4959,-426.4152"},{"type":"polyline","net":"SW1","start":[0,0],"end":[0,0],"width":2.3622,"svgpath":"M454.9552,-321.311 454.9552,-317.3261 458.2645,-314.0167 458.2645,-313.72"},{"type":"polyline","net":"SW1","start":[0,0],"end":[0,0],"width":3.93701,"svgpath":"M454.9552,-335.063 454.9552,-329.5512 454.9552,-321.311"},{"type":"polyline","net":"SW0","start":[0,0],"end":[0,0],"width":2.3622,"svgpath":"M330.9753,-334.7325 330.9753,-317.2904 332.238,-316.0277 334.5458,-313.72 338.5854,-313.72 341.9318,-313.72"},{"type":"polyline","net":"+3.3V","start":[0,0],"end":[0,0],"width":2.3622,"svgpath":"M448.1346,-334.8662 448.1346,-329.5512"},{"type":"polyline","net":"+1.5V","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M422.9339,-416.2421 422.9339,-420.1791"},{"type":"polyline","net":"+1.5V","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M394.6849,-403.7774 392.2247,-406.2375 387.122,-406.2375"},{"type":"polyline","net":"+1.5V","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M473.6217,-402.7932 473.6217,-402.3995"},{"type":"polyline","net":"VOLP","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M394.5572,-384.683 394.5572,-388.2954 399.0156,-392.7538 399.0156,-409.0924 391.6334,-416.4745 387.122,-416.4745"},{"type":"polyline","net":"$1N46470","start":[0,0],"end":[0,0],"width":3.93701,"svgpath":"M401.4416,-376.809 401.4416,-384.6191 401.3778,-384.683"},{"type":"polyline","net":"GND","start":[0,0],"end":[0,0],"width":2.3622,"svgpath":"M432.0864,-426.6115 438.5333,-426.6115"},{"type":"polyline","net":"+3.3V","start":[0,0],"end":[0,0],"width":2.3622,"svgpath":"M432.0864,-420.7065 449.2123,-420.7065"},{"type":"polyline","net":"CC1","start":[0,0],"end":[0,0],"width":1,"svgpath":"M441.5784,-357.8134 445.5711,-357.8134 446.9831,-359.2255 450.5903,-359.2255"},{"type":"polyline","net":"CC2","start":[0,0],"end":[0,0],"width":1,"svgpath":"M441.5784,-355.2534 444.5868,-355.2534 447.5737,-352.2666 450.5903,-352.2666"},{"type":"polyline","net":"HEAT","start":[0,0],"end":[0,0],"width":1,"svgpath":"M339.3102,-329.428 338.6597,-328.7776 336.0236,-328.7776"},{"type":"polyline","net":"$1N45830","start":[0,0],"end":[0,0],"width":3.93701,"svgpath":"M322.8002,-349.1664 322.7351,-349.1013 322.7351,-341.5531"},{"type":"polyline","net":"SW0","start":[0,0],"end":[0,0],"width":3.93701,"svgpath":"M322.7351,-334.7325 330.9753,-334.7325"},{"type":"polyline","net":"$1N45829","start":[0,0],"end":[0,0],"width":2.3622,"svgpath":"M448.1346,-321.311 440.5864,-321.311 440.5213,-321.3761"},{"type":"polyline","net":"+3.3V","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M387.122,-398.5605 390.1397,-398.5605 391.8598,-400.2807 391.8598,-401.9584 390.1397,-403.6785 387.122,-403.6785 378.2484,-403.6785 376.9684,-404.9585 368.1101,-404.9585"},{"type":"polyline","net":"HEAT","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M404.4131,-403.6785 409.728,-403.6785"},{"type":"polyline","net":"SW1","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M409.728,-401.1195 415.043,-401.1195"},{"type":"polyline","net":"SW0","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M404.4131,-398.5605 409.728,-398.5605"},{"type":"polyline","net":"TXD","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M409.728,-396.0015 415.043,-396.0015"},{"type":"polyline","net":"RXD","start":[0,0],"end":[0,0],"width":1.41732,"svgpath":"M404.4131,-393.4425 409.728,-393.4425"},{"type":"polyline","net":"VOLP","start":[0,0],"end":[0,0],"width":3.93701,"svgpath":"M385.8266,-385.164 394.0762,-385.164 394.5572,-384.683"},{"type":"polyline","net":"VCC","start":[0,0],"end":[0,0],"width":1.1811,"svgpath":"M436.6572,-365.4934 441.5784,-365.4934"},{"type":"polyline","net":"HEAT","start":[0,0],"end":[0,0],"width":1,"svgpath":"M339.3102,-331.4239 339.3102,-329.428 339.9606,-328.7776 352.1653,-328.7776 352.8928,-329.5051 352.8928,-331.4239"},{"type":"polyline","net":"CC2","start":[0,0],"end":[0,0],"width":1.1811,"svgpath":"M436.854,-355.2534 441.5784,-355.2534"},{"type":"polyline","net":"CC1","start":[0,0],"end":[0,0],"width":1.1811,"svgpath":"M434.295,-357.8134 441.5784,-357.8134"},{"type":"polyline","net":"$1N49187","start":[0,0],"end":[0,0],"width":1,"svgpath":"M401.3339,-360.2298 401.3339,-361.7132"},{"type":"polyline","net":"$1N49187","start":[0,0],"end":[0,0],"width":1,"svgpath":"M387.6696,-361.6928 387.6696,-360.0054 388.6118,-359.0632 400.1674,-359.0632 401.3339,-360.2298 402.4712,-359.0925 410.8266,-359.0925 411.2203,-359.4862 411.2203,-364.0137 412.7,-365.4934 419.8384,-365.4934"},{"type":"polyline","net":"GND","start":[0,0],"end":[0,0],"width":1.1811,"svgpath":"M419.8384,-355.2534 424.7597,-355.2534"},{"type":"polyline","net":"$1N27574","start":[0,0],"end":[0,0],"width":1,"svgpath":"M434.1187,-341.9665 434.1187,-350.1012 436.7109,-352.6934 441.5784,-352.6934"},{"type":"polyline","net":"CC1","start":[0,0],"end":[0,0],"width":1.1811,"svgpath":"M393.505,-332.7184 393.505,-327.7971"},{"type":"polyline","net":"CC2","start":[0,0],"end":[0,0],"width":1.1811,"svgpath":"M405.315,-327.7971 405.315,-332.7184"},{"start":[393.505,-327.797],"end":[393.505,-327.797],"width":2.4016,"net":"CC1"},{"start":[405.315,-327.797],"end":[405.315,-327.797],"width":2.4016,"net":"CC2"},{"start":[424.76,-355.253],"end":[424.76,-355.253],"width":2.4016,"net":"GND"},{"start":[436.854,-355.253],"end":[436.854,-355.253],"width":2.4016,"net":"CC2"},{"start":[434.295,-357.813],"end":[434.295,-357.813],"width":2.4016,"net":"CC1"},{"start":[390.945,-365.785],"end":[390.945,-365.785],"width":2.4016,"net":"VCC"},{"start":[393.875,-365.785],"end":[393.875,-365.785],"width":2.4016,"net":"VCC"},{"start":[396.806,-365.785],"end":[396.806,-365.785],"width":2.4016,"net":"VCC"},{"start":[399.736,-365.785],"end":[399.736,-365.785],"width":2.4016,"net":"VCC"},{"start":[402.666,-365.785],"end":[402.666,-365.785],"width":2.4016,"net":"VCC"},{"start":[405.597,-365.785],"end":[405.597,-365.785],"width":2.4016,"net":"VCC"},{"start":[408.527,-365.785],"end":[408.527,-365.785],"width":2.4016,"net":"VCC"},{"start":[393.875,-368.716],"end":[393.875,-368.716],"width":2.4016,"net":"VCC"},{"start":[396.806,-368.716],"end":[396.806,-368.716],"width":2.4016,"net":"VCC"},{"start":[399.736,-368.716],"end":[399.736,-368.716],"width":2.4016,"net":"VCC"},{"start":[402.666,-368.716],"end":[402.666,-368.716],"width":2.4016,"net":"VCC"},{"start":[405.597,-368.716],"end":[405.597,-368.716],"width":2.4016,"net":"VCC"},{"start":[436.657,-365.493],"end":[436.657,-365.493],"width":2.4016,"net":"VCC"},{"start":[404.413,-393.443],"end":[404.413,-393.443],"width":2.4016,"net":"RXD"},{"start":[415.043,-396.002],"end":[415.043,-396.002],"width":2.4016,"net":"TXD"},{"start":[404.413,-398.561],"end":[404.413,-398.561],"width":2.4016,"net":"SW0"},{"start":[415.043,-401.12],"end":[415.043,-401.12],"width":2.4016,"net":"SW1"},{"start":[404.413,-403.679],"end":[404.413,-403.679],"width":2.4016,"net":"HEAT"},{"start":[428.149,-389.211],"end":[428.149,-389.211],"width":2.4016,"net":"GND"},{"start":[428.149,-397.085],"end":[428.149,-397.085],"width":2.4016,"net":"GND"},{"start":[453.149,-400.628],"end":[453.149,-400.628],"width":2.4016,"net":"GND"},{"start":[455.905,-400.628],"end":[455.905,-400.628],"width":2.4016,"net":"GND"},{"start":[450.393,-400.628],"end":[450.393,-400.628],"width":2.4016,"net":"GND"},{"start":[336.024,-328.778],"end":[336.024,-328.778],"width":2.4016,"net":"HEAT"},{"start":[432.086,-420.707],"end":[432.086,-420.707],"width":2.4016,"net":"+3.3V"},{"start":[368.11,-420.707],"end":[368.11,-420.707],"width":2.4016,"net":"+3.3V"},{"start":[473.622,-402.793],"end":[473.622,-402.793],"width":2.4016,"net":"+1.5V"},{"start":[394.685,-403.777],"end":[394.685,-403.777],"width":2.4016,"net":"+1.5V"},{"start":[422.934,-416.242],"end":[422.934,-416.242],"width":2.4016,"net":"+1.5V"},{"start":[448.135,-334.866],"end":[448.135,-334.866],"width":2.4016,"net":"+3.3V"},{"start":[332.238,-316.028],"end":[332.238,-316.028],"width":2.4016,"net":"SW0"},{"start":[454.955,-335.063],"end":[454.955,-335.063],"width":2.4016,"net":"SW1"},{"start":[373.996,-380.145],"end":[373.996,-380.145],"width":2.4016,"net":"RXD"},{"start":[363.996,-380.145],"end":[363.996,-380.145],"width":2.4016,"net":"TXD"},{"start":[330.975,-341.553],"end":[330.975,-341.553],"width":2.4016,"net":"+3.3V"},{"start":[419.942,-397.97],"end":[419.942,-397.97],"width":2.4016,"net":"+5V"},{"start":[343.996,-380.145],"end":[343.996,-380.145],"width":2.4016,"net":"+5V"},{"start":[368.11,-404.959],"end":[368.11,-404.959],"width":2.4016,"net":"+3.3V"},{"start":[329.921,-389.147],"end":[329.921,-389.147],"width":2.4016,"net":"+1.5V"},{"start":[415.24,-413.916],"end":[415.24,-413.916],"width":2.4016,"net":"TEMP1"},{"start":[415.043,-406.238],"end":[415.043,-406.238],"width":2.4016,"net":"SCL"},{"start":[404.413,-408.798],"end":[404.413,-408.798],"width":2.4016,"net":"SDA"}],"B":[{"start":[393.505,-327.797],"end":[393.505,-327.797],"width":2.4016,"net":"CC1"},{"start":[405.315,-327.797],"end":[405.315,-327.797],"width":2.4016,"net":"CC2"},{"start":[424.76,-355.253],"end":[424.76,-355.253],"width":2.4016,"net":"GND"},{"start":[436.854,-355.253],"end":[436.854,-355.253],"width":2.4016,"net":"CC2"},{"start":[434.295,-357.813],"end":[434.295,-357.813],"width":2.4016,"net":"CC1"},{"start":[390.945,-365.785],"end":[390.945,-365.785],"width":2.4016,"net":"VCC"},{"start":[393.875,-365.785],"end":[393.875,-365.785],"width":2.4016,"net":"VCC"},{"start":[396.806,-365.785],"end":[396.806,-365.785],"width":2.4016,"net":"VCC"},{"start":[399.736,-365.785],"end":[399.736,-365.785],"width":2.4016,"net":"VCC"},{"start":[402.666,-365.785],"end":[402.666,-365.785],"width":2.4016,"net":"VCC"},{"start":[405.597,-365.785],"end":[405.597,-365.785],"width":2.4016,"net":"VCC"},{"start":[408.527,-365.785],"end":[408.527,-365.785],"width":2.4016,"net":"VCC"},{"start":[393.875,-368.716],"end":[393.875,-368.716],"width":2.4016,"net":"VCC"},{"start":[396.806,-368.716],"end":[396.806,-368.716],"width":2.4016,"net":"VCC"},{"start":[399.736,-368.716],"end":[399.736,-368.716],"width":2.4016,"net":"VCC"},{"start":[402.666,-368.716],"end":[402.666,-368.716],"width":2.4016,"net":"VCC"},{"start":[405.597,-368.716],"end":[405.597,-368.716],"width":2.4016,"net":"VCC"},{"start":[436.657,-365.493],"end":[436.657,-365.493],"width":2.4016,"net":"VCC"},{"start":[404.413,-393.443],"end":[404.413,-393.443],"width":2.4016,"net":"RXD"},{"start":[415.043,-396.002],"end":[415.043,-396.002],"width":2.4016,"net":"TXD"},{"start":[404.413,-398.561],"end":[404.413,-398.561],"width":2.4016,"net":"SW0"},{"start":[415.043,-401.12],"end":[415.043,-401.12],"width":2.4016,"net":"SW1"},{"start":[404.413,-403.679],"end":[404.413,-403.679],"width":2.4016,"net":"HEAT"},{"start":[428.149,-389.211],"end":[428.149,-389.211],"width":2.4016,"net":"GND"},{"start":[428.149,-397.085],"end":[428.149,-397.085],"width":2.4016,"net":"GND"},{"start":[453.149,-400.628],"end":[453.149,-400.628],"width":2.4016,"net":"GND"},{"start":[455.905,-400.628],"end":[455.905,-400.628],"width":2.4016,"net":"GND"},{"start":[450.393,-400.628],"end":[450.393,-400.628],"width":2.4016,"net":"GND"},{"start":[336.024,-328.778],"end":[336.024,-328.778],"width":2.4016,"net":"HEAT"},{"start":[432.086,-420.707],"end":[432.086,-420.707],"width":2.4016,"net":"+3.3V"},{"start":[368.11,-420.707],"end":[368.11,-420.707],"width":2.4016,"net":"+3.3V"},{"start":[473.622,-402.793],"end":[473.622,-402.793],"width":2.4016,"net":"+1.5V"},{"start":[394.685,-403.777],"end":[394.685,-403.777],"width":2.4016,"net":"+1.5V"},{"start":[422.934,-416.242],"end":[422.934,-416.242],"width":2.4016,"net":"+1.5V"},{"start":[448.135,-334.866],"end":[448.135,-334.866],"width":2.4016,"net":"+3.3V"},{"start":[332.238,-316.028],"end":[332.238,-316.028],"width":2.4016,"net":"SW0"},{"start":[454.955,-335.063],"end":[454.955,-335.063],"width":2.4016,"net":"SW1"},{"start":[373.996,-380.145],"end":[373.996,-380.145],"width":2.4016,"net":"RXD"},{"start":[363.996,-380.145],"end":[363.996,-380.145],"width":2.4016,"net":"TXD"},{"start":[330.975,-341.553],"end":[330.975,-341.553],"width":2.4016,"net":"+3.3V"},{"start":[419.942,-397.97],"end":[419.942,-397.97],"width":2.4016,"net":"+5V"},{"start":[343.996,-380.145],"end":[343.996,-380.145],"width":2.4016,"net":"+5V"},{"start":[368.11,-404.959],"end":[368.11,-404.959],"width":2.4016,"net":"+3.3V"},{"start":[329.921,-389.147],"end":[329.921,-389.147],"width":2.4016,"net":"+1.5V"},{"start":[415.24,-413.916],"end":[415.24,-413.916],"width":2.4016,"net":"TEMP1"},{"start":[415.043,-406.238],"end":[415.043,-406.238],"width":2.4016,"net":"SCL"},{"start":[404.413,-408.798],"end":[404.413,-408.798],"width":2.4016,"net":"SDA"}]},"zones":{"F":[{"net":"VCC","svgpath":"M 389.7699 -360.5832 L 389.61683 -360.61365 389.48706 -360.70036 389.40035 -360.83013 389.3699 -360.9832 389.3699 -366.99766 389.40035 -367.15074 389.48706 -367.28051 390.52314 -368.31659 390.551 -368.38385 390.551 -379.79291 390.58145 -379.94599 390.66816 -380.07576 391.41809 -380.82569 391.54786 -380.9124 391.70094 -380.94285 396.68451 -380.94285 396.83759 -380.9124 396.96736 -380.82569 397.71729 -380.07576 397.804 -379.94599 397.83445 -379.79291 397.83445 -371.53345 397.86231 -371.46619 398.98769 -370.34081 399.05495 -370.31295 406.72386 -370.31295 406.87694 -370.2825 407.00671 -370.19579 409.92199 -367.28051 410.0087 -367.15074 410.03915 -366.99766 410.03915 -365.099 410.02659 -364.99954 409.98968 -364.90632 409.8171 -364.59237 409.7314 -364.30986 409.7003 -363.99405 409.7003 -361.0125 409.66985 -360.85943 409.58314 -360.72966 409.45337 -360.64295 409.3003 -360.6125 403.444 -360.6125 403.29093 -360.64295 403.16116 -360.72966 403.07445 -360.85943 403.044 -361.0125 403.044 -363.07054 403.01596 -363.31941 402.94071 -363.53446 402.81949 -363.72738 402.65838 -363.88849 402.46546 -364.00971 402.25041 -364.08496 402.00154 -364.113 400.66646 -364.113 400.41759 -364.08496 400.20254 -364.00971 400.00962 -363.88849 399.84851 -363.72738 399.72729 -363.53446 399.65204 -363.31941 399.624 -363.07054 399.624 -360.9832 399.59355 -360.83013 399.50684 -360.70036 399.37707 -360.61365 399.224 -360.5832 389.7699 -360.5832 Z "},{"net":"$1N44398","svgpath":"M 372.62504 -308.33565 L 372.47196 -308.3052 364.92934 -308.3052 364.77626 -308.33565 364.64649 -308.42236 356.52381 -316.54504 356.45655 -316.5729 354.24766 -316.5729 354.09458 -316.60335 353.96481 -316.69006 353.77938 -316.87549 353.58646 -316.99671 353.37141 -317.07196 353.12254 -317.1 350.80746 -317.1 350.55859 -317.07196 350.34354 -316.99671 350.15062 -316.87549 349.96519 -316.69006 349.83542 -316.60335 349.68234 -316.5729 340.86766 -316.5729 340.71458 -316.60335 340.58481 -316.69006 340.39938 -316.87549 340.20646 -316.99671 339.99141 -317.07196 339.74254 -317.1 338.61489 -317.1 338.46181 -317.13045 338.33204 -317.21716 337.91236 -317.63684 337.82565 -317.76661 337.7952 -317.91969 337.7952 -326.8576 337.82565 -327.01067 337.91236 -327.14044 338.04213 -327.22715 338.1952 -327.2576 338.64006 -327.2576 338.95574 -327.28868 339.19408 -327.36096 339.31018 -327.37817 339.42628 -327.36095 339.66444 -327.2887 339.98025 -327.2576 352.14565 -327.2576 352.46146 -327.2887 352.74624 -327.37509 353.00869 -327.51538 353.23677 -327.70255 353.35577 -327.76997 353.49053 -327.79335 364.40111 -327.79335 364.55419 -327.7629 364.68396 -327.67619 375.27639 -317.08376 375.3631 -316.95399 375.39355 -316.80091 375.39355 -311.22679 375.3631 -311.07371 375.27639 -310.94394 372.75481 -308.42236 372.62504 -308.33565 Z "},{"net":"GND","svgpath":"M 382.70705 -323.60885 L 382.55397 -323.5784 379.97104 -323.5784 379.81796 -323.60885 379.68819 -323.69556 373.64976 -329.73399 373.5825 -329.76185 355.003 -329.76185 354.84993 -329.7923 354.72016 -329.87901 354.63345 -330.00878 354.603 -330.16185 354.603 -332.78154 354.57496 -333.03041 354.49971 -333.24546 354.37849 -333.43838 354.21738 -333.59949 354.02446 -333.72071 353.80941 -333.79596 353.56054 -333.824 352.22546 -333.824 351.97659 -333.79596 351.76154 -333.72071 351.56862 -333.59949 351.40751 -333.43838 351.28629 -333.24546 351.21104 -333.03041 351.183 -332.78154 351.183 -330.6976 351.15255 -330.54453 351.06584 -330.41476 350.93607 -330.32805 350.783 -330.2976 341.42 -330.2976 341.26693 -330.32805 341.13716 -330.41476 341.05045 -330.54453 341.02 -330.6976 341.02 -332.78154 340.99196 -333.03041 340.91671 -333.24546 340.79549 -333.43838 340.66826 -333.56561 340.58155 -333.69538 340.5511 -333.84846 340.5511 -334.91111 340.58155 -335.06419 340.66826 -335.19396 341.81189 -336.33759 341.94166 -336.4243 342.09474 -336.45475 375.9447 -336.45475 376.01196 -336.48261 378.31844 -338.78909 378.3463 -338.85635 378.3463 -343.37566 378.37675 -343.52874 378.46346 -343.65851 378.62284 -343.81789 378.75261 -343.9046 378.90569 -343.93505 383.88926 -343.93505 384.04234 -343.9046 384.17211 -343.81789 384.33149 -343.65851 384.4182 -343.52874 384.44865 -343.37566 384.44865 -338.6595 384.47651 -338.59224 386.7086 -336.36015 386.79239 -336.23726 386.82548 -336.09226 386.775 -335.69554 386.775 -329.74046 386.80304 -329.49159 386.87829 -329.27654 386.99951 -329.08362 387.08739 -328.99574 387.1741 -328.86597 387.20455 -328.71289 387.20455 -328.22898 387.1741 -328.0759 387.08739 -327.94613 382.83682 -323.69556 382.70705 -323.60885 Z "},{"net":"$1N27582","svgpath":"M 457.07369 -386.4851 L 456.92061 -386.45465 442.29139 -386.45465 442.13831 -386.4851 442.00854 -386.57181 441.84916 -386.73119 441.76245 -386.86096 441.732 -387.01404 441.732 -407.74561 441.76245 -407.89869 441.84916 -408.02846 442.20539 -408.38469 442.33516 -408.4714 442.48824 -408.50185 446.88126 -408.50185 447.03434 -408.4714 447.16411 -408.38469 447.52034 -408.02846 447.60705 -407.89869 447.6375 -407.74561 447.6375 -397.91135 447.66536 -397.84409 447.71719 -397.79226 447.8039 -397.66249 447.83435 -397.50941 447.83435 -396.1397 447.86221 -396.07244 448.39704 -395.53761 448.4643 -395.50975 456.92061 -395.50975 457.07369 -395.4793 457.20346 -395.39259 457.75654 -394.83951 457.84325 -394.70974 457.8737 -394.55666 457.8737 -387.40774 457.84325 -387.25466 457.75654 -387.12489 457.20346 -386.57181 457.07369 -386.4851 Z "},{"net":"$1N40383","svgpath":"M 447.82174 -369.9497 L 447.66866 -369.91925 440.51974 -369.91925 440.36666 -369.9497 440.23689 -370.03641 440.07751 -370.19579 439.9908 -370.32556 439.96035 -370.47864 439.96035 -375.85591 439.9908 -376.00899 440.07751 -376.13876 440.23689 -376.29814 440.36666 -376.38485 440.51974 -376.4153 442.28315 -376.4153 442.35041 -376.44316 442.88524 -376.97799 442.9131 -377.04525 442.9131 -381.17086 442.94355 -381.32394 443.03026 -381.45371 443.18964 -381.61309 443.31941 -381.6998 443.47249 -381.73025 447.66866 -381.73025 447.82174 -381.6998 447.95151 -381.61309 448.11089 -381.45371 448.1976 -381.32394 448.22805 -381.17086 448.22805 -370.47864 448.1976 -370.32556 448.11089 -370.19579 447.95151 -370.03641 447.82174 -369.9497 Z "},{"net":"VCC","svgpath":"M 435.99219 -364.40745 L 435.83911 -364.4379 435.70934 -364.52461 433.58146 -366.65249 433.49475 -366.78226 433.4643 -366.93534 433.4643 -369.87985 433.43644 -369.94711 433.18776 -370.19579 433.10105 -370.32556 433.0706 -370.47864 433.0706 -377.23386 433.10105 -377.38694 433.18776 -377.51671 433.34714 -377.67609 433.47691 -377.7628 433.62999 -377.79325 436.77135 -377.79325 436.83861 -377.82111 437.96399 -378.94649 437.99185 -379.01375 437.99185 -383.92676 438.0223 -384.07984 438.10901 -384.20961 439.25264 -385.35324 439.38242 -385.43996 439.53551 -385.4704 441.80975 -385.47025 442.01157 -385.44169 442.13692 -385.43465 447.70441 -385.43465 447.85749 -385.4042 447.98726 -385.31749 448.11089 -385.19386 448.1976 -385.06409 448.22805 -384.91101 448.22805 -383.15025 448.1976 -382.99718 448.11089 -382.86741 447.98112 -382.7807 447.82805 -382.75025 443.31802 -382.75025 443.07997 -382.72406 442.86451 -382.64867 442.67123 -382.52723 442.57762 -382.44356 442.19979 -382.06573 442.04997 -381.87889 441.95093 -381.67323 441.90014 -381.45068 441.8931 -381.32533 441.8931 -377.8353 441.86265 -377.68223 441.77594 -377.55246 441.64617 -377.46575 441.4931 -377.4353 440.36527 -377.4353 440.12722 -377.40911 439.91176 -377.33372 439.71848 -377.21228 439.62487 -377.12861 439.24704 -376.75078 439.09722 -376.56394 438.99818 -376.35828 438.94739 -376.13573 438.94035 -376.01038 438.94035 -370.32417 438.96654 -370.08612 439.04193 -369.87066 439.16337 -369.67738 439.24704 -369.58377 439.62487 -369.20594 439.81171 -369.05612 439.90457 -369.0048 440.11072 -368.92913 440.25572 -368.83648 440.35705 -368.74539 440.39345 -368.73815 444.32221 -368.73815 444.47529 -368.7077 444.60506 -368.62099 445.74869 -367.47736 445.8354 -367.34759 445.86585 -367.19451 445.86585 -365.95109 445.8354 -365.79801 445.74869 -365.66824 444.7414 -364.66095 444.62574 -364.5804 444.48932 -364.54497 444.34909 -364.55906 444.21414 -364.59745 443.88451 -364.628 439.27149 -364.628 438.94186 -364.59745 438.64131 -364.51194 438.42897 -364.41807 438.33739 -364.40745 435.99219 -364.40745 Z "},{"net":"$1N27581","svgpath":"M 431.08949 -376.05205 L 430.93641 -376.0216 417.09459 -376.0216 416.94151 -376.05205 416.81174 -376.13876 416.65236 -376.29814 416.56565 -376.42791 416.5352 -376.58099 416.5352 -381.17086 416.56565 -381.32394 416.65236 -381.45371 416.81174 -381.61309 416.94151 -381.6998 417.09459 -381.73025 436.25136 -381.73025 436.40444 -381.6998 436.53421 -381.61309 436.69359 -381.45371 436.7803 -381.32394 436.81075 -381.17086 436.81075 -379.40143 436.7803 -379.24836 436.69359 -379.11859 436.50541 -378.93041 436.37564 -378.8437 436.22257 -378.81325 433.47552 -378.81325 433.23747 -378.78706 433.02201 -378.71167 432.82972 -378.59092 432.715 -378.48715 432.59044 -378.41053 432.44667 -378.3838 431.9289 -378.3838 431.86164 -378.35594 431.52366 -378.01796 431.4958 -377.9507 431.4958 -376.58099 431.46535 -376.42791 431.37864 -376.29814 431.21926 -376.13876 431.08949 -376.05205 Z "},{"net":"$1N40384","svgpath":"M 437.97924 -386.28825 L 437.82616 -386.2578 432.6832 -386.2578 432.53013 -386.28825 432.40036 -386.37496 432.31365 -386.50473 432.2832 -386.6578 432.2832 -397.31256 432.31365 -397.46564 432.40036 -397.59541 432.75659 -397.95164 432.88636 -398.03835 433.03944 -398.0688 438.61356 -398.0688 438.76664 -398.03835 438.89641 -397.95164 439.25264 -397.59541 439.33935 -397.46564 439.3698 -397.31256 439.3698 -387.80144 439.33935 -387.64836 439.25264 -387.51859 438.10901 -386.37496 437.97924 -386.28825 Z "},{"net":"GND","svgpath":"M 425.00605 -382.75025 L 424.85298 -382.7807 424.72321 -382.86741 424.6365 -382.99718 424.60605 -383.15025 424.60605 -404.20231 424.6365 -404.35539 424.72321 -404.48516 425.27629 -405.03824 425.40606 -405.12495 425.55914 -405.1554 430.73956 -405.1554 430.89264 -405.12495 431.02241 -405.03824 431.57549 -404.48516 431.6622 -404.35539 431.69265 -404.20231 431.69265 -398.49588 431.66592 -398.35211 431.5893 -398.22755 431.48553 -398.11283 431.36478 -397.92054 431.28939 -397.70508 431.2632 -397.46703 431.2632 -386.46587 431.28939 -386.22782 431.36478 -386.01236 431.48622 -385.81908 431.75087 -385.54449 431.93771 -385.39467 432.14337 -385.29563 432.36592 -385.24484 432.49127 -385.2378 436.41075 -385.2378 436.56382 -385.20735 436.69359 -385.12064 436.7803 -384.99087 436.81075 -384.8378 436.81075 -383.15025 436.7803 -382.99718 436.69359 -382.86741 436.56382 -382.7807 436.41075 -382.75025 425.00605 -382.75025 Z "},{"net":"+5V","svgpath":"M 417.78356 -382.81293 L 417.63048 -382.84338 417.50071 -382.93009 416.84921 -383.58159 416.7625 -383.71136 416.73205 -383.86444 416.73205 -394.43363 416.75056 -394.55392 416.80439 -394.66307 416.96495 -394.89236 417.12843 -395.24296 417.22856 -395.61663 417.26227 -396.002 417.22856 -396.38737 417.12843 -396.76104 416.96495 -397.11164 416.80439 -397.34093 416.75056 -397.45008 416.73205 -397.57037 416.73205 -399.55163 416.75056 -399.67192 416.80439 -399.78107 416.96495 -400.01036 417.12843 -400.36096 417.22856 -400.73463 417.26227 -401.12 417.22856 -401.50537 417.12843 -401.87904 416.96495 -402.22964 416.80439 -402.45893 416.75056 -402.56808 416.73205 -402.68837 416.73205 -404.66963 416.75056 -404.78992 416.80439 -404.89907 416.96495 -405.12836 417.12843 -405.47896 417.22856 -405.85263 417.26227 -406.238 417.22856 -406.62337 417.12843 -406.99704 416.96495 -407.34764 416.80439 -407.57693 416.75056 -407.68608 416.73205 -407.80637 416.73205 -411.09206 416.7625 -411.24514 416.84921 -411.37491 418.58339 -413.10909 418.71316 -413.1958 418.86624 -413.22625 432.04695 -413.22625 432.11421 -413.25411 435.90619 -417.04609 436.03596 -417.1328 436.18904 -417.16325 441.36946 -417.16325 441.52254 -417.1328 441.65231 -417.04609 442.49154 -416.20686 442.5588 -416.179 460.1965 -416.179 460.26376 -416.20686 460.99544 -416.93854 461.0233 -417.0058 461.0233 -418.76921 461.05375 -418.92229 461.14046 -419.05206 461.89039 -419.80199 462.02016 -419.8887 462.17324 -419.91915 466.17256 -419.91915 466.32564 -419.8887 466.45541 -419.80199 467.00849 -419.24891 467.0952 -419.11914 467.12565 -418.96606 467.12565 -409.84864 467.0952 -409.69556 467.00849 -409.56579 466.45541 -409.01271 466.32564 -408.926 466.17256 -408.89555 460.99214 -408.89555 460.83906 -408.926 460.70929 -409.01271 457.90261 -411.81939 457.83535 -411.84725 440.98295 -411.84725 440.91569 -411.81939 439.79136 -410.69506 439.7635 -410.6278 439.7635 -399.61244 439.73305 -399.45936 439.64634 -399.32959 439.46272 -399.14597 439.35537 -399.06936 439.22894 -399.03183 439.09718 -399.03745 438.88537 -399.08221 438.76803 -399.0888 433.39739 -399.0888 433.24431 -399.11925 433.11454 -399.20596 432.99091 -399.32959 432.9042 -399.45936 432.87375 -399.61244 432.87375 -404.91915 432.84589 -404.98641 431.91736 -405.91494 431.8501 -405.9428 431.6818 -405.9428 431.57887 -405.95627 431.48286 -405.99578 431.34464 -406.07502 431.13208 -406.14921 430.89403 -406.1754 425.40467 -406.1754 425.16662 -406.14921 424.95406 -406.07502 424.81584 -405.99578 424.71983 -405.95627 424.6169 -405.9428 424.25175 -405.9428 424.18449 -405.91494 423.25596 -404.98641 423.2281 -404.91915 423.2281 -383.86444 423.19765 -383.71136 423.11094 -383.58159 422.45943 -382.93009 422.32966 -382.84338 422.17659 -382.81293 417.78356 -382.81293 Z "},{"net":"GND","svgpath":"M 456.87684 -399.28035 L 456.72376 -399.2499 449.57484 -399.2499 449.42176 -399.28035 449.29199 -399.36706 448.93576 -399.72329 448.84905 -399.85306 448.8186 -400.00614 448.8186 -410.42725 448.84905 -410.58032 448.93576 -410.71009 449.06553 -410.7968 449.2186 -410.82725 457.08 -410.82725 457.23307 -410.7968 457.36284 -410.71009 457.44955 -410.58032 457.48 -410.42725 457.48 -400.00614 457.44955 -399.85306 457.36284 -399.72329 457.00661 -399.36706 456.87684 -399.28035 Z "},{"net":"+1.5V","svgpath":"M 480.69569 -385.6977 L 480.54261 -385.66725 467.29134 -385.66725 467.13826 -385.6977 467.00849 -385.78441 466.58966 -386.20324 466.50295 -386.33301 466.4725 -386.48609 466.4725 -387.12114 466.44446 -387.37001 466.36921 -387.58506 466.24799 -387.77798 466.08688 -387.93909 465.91518 -388.05882 465.57871 -388.39529 465.51145 -388.42315 460.40159 -388.42315 460.24851 -388.4536 460.11874 -388.54031 459.76251 -388.89654 459.6758 -389.02631 459.64535 -389.17939 459.64535 -395.14721 459.6758 -395.30029 459.76251 -395.43006 459.92189 -395.58944 460.05166 -395.67615 460.20474 -395.7066 464.9209 -395.7066 464.98816 -395.73446 470.24739 -400.99369 470.27525 -401.06095 470.27525 -419.55661 470.3057 -419.70969 470.39241 -419.83946 471.73289 -421.17994 471.86266 -421.26665 472.01574 -421.2971 475.42451 -421.2971 475.57759 -421.26665 475.70736 -421.17994 477.04784 -419.83946 477.13455 -419.70969 477.165 -419.55661 477.165 -401.06095 477.19286 -400.99369 481.37854 -396.80801 481.46525 -396.67824 481.4957 -396.52516 481.4957 -386.62034 481.46525 -386.46726 481.37854 -386.33749 480.82546 -385.78441 480.69569 -385.6977 Z "},{"net":"GND","svgpath":"M 482.11799 -304.00495 L 481.96491 -303.9745 314.88509 -303.9745 314.73201 -304.00495 314.60224 -304.09166 314.51553 -304.22143 314.48509 -304.3745 314.51553 -304.52757 314.60224 -304.65734 320.79252 -310.84762 320.81359 -310.9008 317.88907 -321.81532 317.85355 -321.86016 306.93903 -324.78468 306.88244 -324.77634 300.68284 -318.57674 300.55307 -318.49003 300.4 -318.45959 300.24693 -318.49003 300.11716 -318.57674 300.03045 -318.70651 300 -318.85959 300.00001 -326.21403 300.03036 -326.36687 302.27581 -331.79761 302.36261 -331.92761 305.87764 -335.44264 305.9055 -335.5099 305.9055 -351.1791 305.87764 -351.24636 302.36949 -354.75452 302.28288 -354.88406 300.03055 -360.31191 300 -360.46522 300.00001 -385.26903 300.03036 -385.42187 302.27581 -390.85261 302.36261 -390.98261 305.87764 -394.49764 305.9055 -394.5649 305.9055 -410.2341 305.87764 -410.30136 302.36949 -413.80952 302.28288 -413.93906 300.03055 -419.36691 300 -419.52022 300.00001 -444.32403 300.03036 -444.47687 302.27581 -449.90761 302.36261 -450.03761 305.87764 -453.55264 305.9055 -453.6199 305.9055 -469.2891 305.87764 -469.35636 302.36949 -472.86452 302.28288 -472.99406 300.03055 -478.42191 300 -478.57522 300 -478.771 300.03045 -478.92407 300.11716 -479.05384 300.24693 -479.14055 300.4 -479.171 496.44999 -479.171 496.60307 -479.14055 496.73284 -479.05384 496.81955 -478.92407 496.84999 -478.77099 496.84999 -478.58496 496.81964 -478.43213 494.57419 -473.00139 494.48739 -472.87139 490.97236 -469.35636 490.9445 -469.2891 490.9445 -453.6199 490.97236 -453.55264 494.48051 -450.04448 494.56712 -449.91494 496.81945 -444.48709 496.85 -444.33378 496.84999 -419.52997 496.81964 -419.37713 494.57419 -413.94639 494.48739 -413.81639 490.97236 -410.30136 490.9445 -410.2341 490.9445 -394.5649 490.97236 -394.49764 494.48051 -390.98948 494.56712 -390.85994 496.81945 -385.43209 496.85 -385.27878 496.84999 -360.47497 496.81964 -360.32213 494.57419 -354.89139 494.48739 -354.76139 490.97236 -351.24636 490.9445 -351.1791 490.9445 -335.5099 490.97236 -335.44264 494.48051 -331.93448 494.56712 -331.80494 496.81945 -326.37709 496.85 -326.22378 496.85 -318.85959 496.81955 -318.70651 496.73284 -318.57674 496.60307 -318.49003 496.45 -318.45959 496.29693 -318.49003 496.16716 -318.57674 489.97688 -324.76702 489.9237 -324.78809 479.00918 -321.86357 478.96434 -321.82805 476.03982 -310.91353 476.04816 -310.85694 482.24776 -304.65734 482.33447 -304.52757 482.36491 -304.3745 482.33447 -304.22143 482.24776 -304.09166 482.11799 -304.00495 Z M 436.32594 -338.23635 L 436.57481 -338.26439 436.78986 -338.33964 436.98278 -338.46086 437.14389 -338.62197 437.26511 -338.81489 437.34036 -339.02994 437.3684 -339.27881 437.3684 -344.65519 437.34036 -344.90406 437.26511 -345.11911 437.14389 -345.31203 436.98278 -345.47314 436.78986 -345.59436 436.57481 -345.66961 436.32594 -345.69765 436.0387 -345.69765 435.88563 -345.7281 435.75586 -345.81481 435.66915 -345.94458 435.6387 -346.09765 435.6387 -349.30591 435.66915 -349.45898 435.75586 -349.58875 436.90889 -350.74178 437.05011 -350.83303 437.21636 -350.85818 437.37825 -350.81279 437.50719 -350.70488 437.58039 -350.55352 437.58492 -350.38544 437.56694 -350.28924 437.56694 -349.97676 437.62435 -349.66961 437.73646 -349.38023 437.93492 -349.06717 437.99002 -348.92789 437.99002 -348.77811 437.93492 -348.63883 437.73646 -348.32577 437.62435 -348.03639 437.56694 -347.72924 437.56694 -347.41676 437.62435 -347.10961 437.73723 -346.81824 437.90173 -346.55257 438.11224 -346.32165 438.3616 -346.13334 438.64131 -345.99406 438.94186 -345.90855 439.27149 -345.878 443.88451 -345.878 444.21414 -345.90855 444.51469 -345.99406 444.7944 -346.13334 445.04376 -346.32165 445.25427 -346.55257 445.41877 -346.81824 445.53165 -347.10961 445.58906 -347.41676 445.58906 -347.72924 445.53165 -348.03639 445.41954 -348.32577 445.22108 -348.63883 445.16598 -348.77811 445.16598 -348.92789 445.22108 -349.06717 445.41954 -349.38023 445.53165 -349.66961 445.58906 -349.97676 445.58906 -350.28924 445.53165 -350.59639 445.41954 -350.88577 445.22108 -351.19883 445.16528 -351.34189 445.1675 -351.49543 445.22739 -351.63682 445.28908 -351.7282 445.41619 -351.84821 445.58235 -351.90255 445.75581 -351.88084 445.90344 -351.78723 446.485 -351.20569 446.71311 -351.01849 446.82095 -350.88031 446.85935 -350.70929 446.85935 -350.06006 446.88739 -349.81119 446.96264 -349.59614 447.08386 -349.40322 447.24497 -349.24211 447.43789 -349.12089 447.65294 -349.04564 447.90181 -349.0176 453.27819 -349.0176 453.52706 -349.04564 453.74211 -349.12089 453.93503 -349.24211 454.09614 -349.40322 454.21736 -349.59614 454.29261 -349.81119 454.32065 -350.06006 454.32065 -354.47394 454.29261 -354.72281 454.21736 -354.93786 454.09614 -355.13078 453.93503 -355.29189 453.75134 -355.40731 453.63535 -355.51821 453.57228 -355.66576 453.57228 -355.82624 453.63535 -355.97379 453.75134 -356.08469 453.93503 -356.20011 454.09614 -356.36122 454.21736 -356.55414 454.29261 -356.76919 454.32065 -357.01806 454.32065 -361.43194 454.29261 -361.68081 454.21736 -361.89586 454.09614 -362.08878 453.93503 -362.24989 453.74211 -362.37111 453.52706 -362.44636 453.27819 -362.4744 447.90181 -362.4744 447.65294 -362.44636 447.43789 -362.37111 447.24497 -362.24989 447.08386 -362.08878 446.96264 -361.89586 446.88739 -361.68081 446.85935 -361.43194 446.85935 -361.06336 446.8237 -360.89827 446.72309 -360.76262 446.57547 -360.68058 446.40216 -360.62801 446.12758 -360.48124 445.98512 -360.43667 445.83624 -360.44744 445.70167 -360.51204 445.60015 -360.62148 445.54583 -360.76051 445.53165 -360.83639 445.41954 -361.12577 445.22108 -361.43883 445.16598 -361.57811 445.16598 -361.72789 445.22108 -361.86717 445.41954 -362.18023 445.53165 -362.46961 445.58906 -362.77676 445.58906 -363.08924 445.53165 -363.39639 445.45483 -363.59469 445.42786 -363.74534 445.45945 -363.8951 445.54497 -364.02202 446.57916 -365.05622 446.72898 -365.24306 446.82802 -365.44872 446.87881 -365.67127 446.88585 -365.79662 446.88585 -367.34898 446.85966 -367.58703 446.78427 -367.80249 446.66638 -367.99076 446.44502 -368.22372 446.36226 -368.35407 446.33504 -368.50605 446.36741 -368.65703 446.45456 -368.78449 446.58348 -368.86945 446.73498 -368.89925 447.82313 -368.89925 448.06118 -368.92544 448.27664 -369.00083 448.46992 -369.12227 448.56353 -369.20594 448.94136 -369.58377 449.09118 -369.77061 449.19022 -369.97627 449.24101 -370.19882 449.24805 -370.32417 449.24805 -381.32533 449.22186 -381.56338 449.14846 -381.77403 449.11802 -381.9271 449.14846 -382.08017 449.22186 -382.29082 449.24805 -382.52887 449.24805 -385.03465 449.2785 -385.18772 449.36521 -385.31749 449.49498 -385.4042 449.64805 -385.43465 457.07508 -385.43465 457.31313 -385.46084 457.52859 -385.53623 457.72187 -385.65767 457.81548 -385.74134 458.58701 -386.51287 458.73683 -386.69971 458.83587 -386.90537 458.88584 -387.12311 458.8939 -387.37647 458.93712 -387.545 459.04781 -387.67925 459.20502 -387.75379 459.37901 -387.75455 459.53686 -387.68136 459.69995 -387.5565 459.89922 -387.46098 460.12177 -387.41019 460.24712 -387.40315 464.91825 -387.40315 465.07132 -387.3727 465.20109 -387.28599 465.2878 -387.15622 465.31825 -387.00315 465.31825 -386.46587 465.34444 -386.22782 465.41983 -386.01236 465.54127 -385.81908 465.62494 -385.72547 466.39647 -384.95394 466.58331 -384.80412 466.78897 -384.70508 467.01152 -384.65429 467.13687 -384.64725 480.69708 -384.64725 480.93513 -384.67344 481.15059 -384.74883 481.34387 -384.87027 481.43748 -384.95394 482.20901 -385.72547 482.35883 -385.91231 482.45787 -386.11797 482.50866 -386.34052 482.5157 -386.46587 482.5157 -396.67963 482.48951 -396.91768 482.41412 -397.13314 482.29268 -397.32642 482.20901 -397.42003 478.30216 -401.32689 478.21545 -401.45666 478.185 -401.60973 478.185 -419.71108 478.15881 -419.94913 478.08342 -420.16459 477.96198 -420.35787 477.87831 -420.45148 476.31938 -422.01041 476.13254 -422.16023 475.92688 -422.25927 475.70433 -422.31006 475.57898 -422.3171 471.86127 -422.3171 471.62322 -422.29091 471.40776 -422.21552 471.21448 -422.09408 471.12087 -422.01041 469.56194 -420.45148 469.41212 -420.26464 469.31308 -420.05898 469.26229 -419.83643 469.25525 -419.71108 469.25525 -401.60973 469.2248 -401.45666 469.13809 -401.32689 464.65496 -396.84376 464.52519 -396.75705 464.37212 -396.7266 460.05027 -396.7266 459.81222 -396.70041 459.59676 -396.62502 459.40348 -396.50358 459.30987 -396.41991 458.93788 -396.04793 458.79053 -395.86869 458.66116 -395.7653 458.501 -395.72317 458.3375 -395.74953 458.19869 -395.83985 457.81548 -396.22306 457.62864 -396.37288 457.42298 -396.47192 457.20043 -396.52271 457.07508 -396.52975 449.25435 -396.52975 449.10128 -396.5602 448.97151 -396.64691 448.8848 -396.77668 448.85435 -396.92975 448.85435 -397.66388 448.82816 -397.90193 448.79964 -398.00094 448.69711 -398.21384 448.6575 -398.38739 448.6575 -407.90008 448.63131 -408.13813 448.55592 -408.35359 448.43448 -408.54687 448.35081 -408.64048 447.77613 -409.21516 447.58929 -409.36498 447.38363 -409.46402 447.16108 -409.51481 447.03573 -409.52185 442.33377 -409.52185 442.09572 -409.49566 441.88026 -409.42027 441.69199 -409.30238 441.45903 -409.08102 441.32868 -408.99826 441.1767 -408.97104 441.02572 -409.00341 440.89826 -409.09056 440.8133 -409.21948 440.7835 -409.37098 440.7835 -410.07902 440.81395 -410.23209 440.90066 -410.36186 441.24889 -410.71009 441.37866 -410.7968 441.53173 -410.82725 457.28657 -410.82725 457.43964 -410.7968 457.56941 -410.71009 460.09727 -408.18224 460.28411 -408.03242 460.48977 -407.93338 460.71232 -407.88259 460.83767 -407.87555 466.32703 -407.87555 466.56508 -407.90174 466.78054 -407.97713 466.97382 -408.09857 467.06743 -408.18224 467.83896 -408.95377 467.98878 -409.14061 468.08782 -409.34627 468.13861 -409.56882 468.14565 -409.69417 468.14565 -419.12053 468.11946 -419.35858 468.04407 -419.57404 467.92263 -419.76732 467.83896 -419.86093 467.06743 -420.63246 466.88059 -420.78228 466.67493 -420.88132 466.45238 -420.93211 466.32703 -420.93915 462.01877 -420.93915 461.78072 -420.91296 461.56526 -420.83757 461.37198 -420.71613 461.27837 -420.63246 460.30999 -419.66408 460.16017 -419.47724 460.06113 -419.27158 460.01034 -419.04903 460.0033 -418.92368 460.0033 -417.599 459.97285 -417.44593 459.88614 -417.31616 459.75637 -417.22945 459.6033 -417.199 443.10758 -417.199 442.95451 -417.22945 442.82474 -417.31616 442.31834 -417.82256 442.23163 -417.95233 442.20118 -418.1054 442.23163 -418.25847 442.31834 -418.38824 442.44811 -418.47495 442.60118 -418.5054 449.19484 -418.5054 449.59425 -418.54034 449.9646 -418.63958 450.31209 -418.80161 450.62616 -419.02153 450.89727 -419.29264 451.11719 -419.60671 451.27922 -419.9542 451.37846 -420.32455 451.41187 -420.7065 451.37846 -421.08845 451.27922 -421.4588 451.11719 -421.80629 450.89727 -422.12036 450.62616 -422.39147 450.31209 -422.61139 449.9646 -422.77342 449.59425 -422.87266 449.19484 -422.9076 434.63006 -422.9076 434.47698 -422.93805 434.34721 -423.02476 434.19688 -423.17509 434.00396 -423.29631 433.78891 -423.37156 433.54004 -423.3996 428.26996 -423.3996 428.02109 -423.37156 427.80604 -423.29631 427.61312 -423.17509 427.45201 -423.01398 427.24433 -422.67503 427.11107 -422.58048 426.95111 -422.5471 426.79116 -422.58048 426.65789 -422.67503 426.56136 -422.84986 426.44014 -423.04278 426.27903 -423.20389 426.20436 -423.25081 426.08837 -423.36171 426.0253 -423.50926 426.0253 -423.66974 426.08837 -423.81729 426.20436 -423.92819 426.27903 -423.97511 426.44014 -424.13622 426.56136 -424.32914 426.63661 -424.54419 426.66465 -424.79306 426.66465 -429.20694 426.63661 -429.45581 426.56136 -429.67086 426.44014 -429.86378 426.27903 -430.02489 426.10959 -430.13136 426.00967 -430.22065 425.94485 -430.33793 425.92241 -430.47004 425.92241 -432.78824 425.95285 -432.94131 426.03956 -433.07108 431.43542 -438.46694 431.56519 -438.55365 431.71826 -438.58409 461.77287 -438.58409 461.89078 -438.56632 461.99821 -438.51459 462.08561 -438.43349 462.40792 -438.02932 462.53195 -437.86222 462.56239 -437.70915 462.56239 -436.08646 462.53195 -435.93339 462.44524 -435.80362 459.38535 -432.74374 459.31042 -432.66594 459.08708 -432.39639 459.03107 -432.31745 458.8504 -432.01762 458.80679 -431.93122 458.67283 -431.60781 458.64257 -431.51587 458.55831 -431.1761 458.5421 -431.08068 458.50965 -430.73471 458.50739 -430.3506 458.48432 -430.21908 458.41926 -430.10248 458.31943 -430.01379 458.08569 -429.86766 457.92491 -429.70688 457.80369 -429.51396 457.72844 -429.29891 457.7004 -429.05004 457.7004 -423.77996 457.72844 -423.53109 457.80369 -423.31604 457.92491 -423.12312 458.08602 -422.96201 458.27894 -422.84079 458.49399 -422.76554 458.74286 -422.7375 464.24914 -422.7375 464.49801 -422.76554 464.71306 -422.84079 464.90598 -422.96201 465.06709 -423.12312 465.18831 -423.31604 465.26356 -423.53109 465.2916 -423.77996 465.2916 -429.05004 465.26356 -429.29891 465.18831 -429.51396 465.13423 -429.60003 465.08294 -429.72384 465.07543 -429.85763 465.11253 -429.9864 465.19007 -430.09569 467.66145 -432.56706 467.73638 -432.64486 467.95972 -432.91441 468.01573 -432.99335 468.1964 -433.29318 468.24001 -433.37958 468.37397 -433.70299 468.40423 -433.79493 468.48849 -434.1347 468.5047 -434.23012 468.53739 -434.57864 468.53941 -434.68664 468.53941 -437.70825 468.56985 -437.86132 468.69478 -438.02932 469.70457 -439.29559 469.83781 -439.50764 469.92052 -439.74402 470.28093 -441.32302 470.30897 -441.5719 470.28093 -441.82078 469.92052 -443.39978 469.83781 -443.63616 469.70457 -443.84821 468.69478 -445.11448 468.51768 -445.29159 468.30561 -445.42484 466.84639 -446.12755 466.61 -446.21026 466.36114 -446.2383 464.74156 -446.2383 464.4927 -446.21026 464.25631 -446.12755 462.79709 -445.42484 462.58502 -445.29159 462.40792 -445.11448 462.08673 -444.71171 461.99932 -444.63061 461.8919 -444.57888 461.77399 -444.56111 430.31844 -444.56111 430.21044 -444.55909 429.86192 -444.5264 429.7665 -444.51019 429.42673 -444.42593 429.33479 -444.39567 429.01138 -444.26171 428.92498 -444.2181 428.62515 -444.03743 428.54621 -443.98142 428.27666 -443.75808 428.19886 -443.68315 420.82335 -436.30764 420.74842 -436.22984 420.52508 -435.96029 420.46907 -435.88135 420.2884 -435.58152 420.24479 -435.49512 420.11083 -435.17171 420.08057 -435.07977 419.99631 -434.74 419.9801 -434.64458 419.94741 -434.29606 419.94539 -434.18806 419.94539 -430.46992 419.92295 -430.33781 419.85813 -430.22052 419.75821 -430.13123 419.58897 -430.02489 419.42786 -429.86378 419.30664 -429.67086 419.23139 -429.45581 419.20335 -429.20694 419.20335 -429.10868 419.1729 -428.9556 419.08619 -428.82583 418.95642 -428.73912 418.80335 -428.70868 417.84216 -428.70707 417.51632 -428.66161 417.2176 -428.56149 416.94236 -428.40819 416.6857 -428.19505 414.73954 -426.24889 414.69142 -426.1985 414.49316 -425.93596 414.35273 -425.65393 414.26651 -425.35091 414.23573 -425.01871 414.23573 -420.79267 414.20528 -420.63959 414.11857 -420.50982 411.93745 -418.32871 411.80768 -418.242 411.65461 -418.21155 407.03389 -418.21155 406.69662 -418.1803 406.3887 -418.09269 406.10213 -417.94999 405.84665 -417.75706 405.63097 -417.52047 405.46244 -417.24828 405.34679 -416.94976 405.28796 -416.63507 405.28796 -416.31493 405.34679 -416.00024 405.46244 -415.70172 405.64549 -415.40607 405.6986 -415.269 405.6986 -415.122 405.64549 -414.98493 405.46244 -414.68928 405.34679 -414.39076 405.28796 -414.07607 405.28796 -413.75593 405.34679 -413.44124 405.46244 -413.14272 405.64549 -412.84707 405.6986 -412.71 405.6986 -412.563 405.64549 -412.42593 405.46244 -412.13028 405.34679 -411.83176 405.28796 -411.51707 405.28796 -411.37366 405.25379 -411.21188 405.15709 -411.07774 405.01441 -410.99417 404.85012 -410.97546 404.4115 -411.01714 404.02763 -410.98356 403.65396 -410.88343 403.30336 -410.71995 402.98648 -410.49806 402.71294 -410.22452 402.49105 -409.90764 402.32757 -409.55704 402.22744 -409.18337 402.19373 -408.798 402.22744 -408.41263 402.32757 -408.03896 402.49105 -407.68836 402.71294 -407.37148 402.98648 -407.09794 403.30336 -406.87605 403.65396 -406.71257 403.98125 -406.62487 404.13484 -406.54492 404.24025 -406.40755 404.27772 -406.2385 404.24025 -406.06945 404.13484 -405.93208 403.98125 -405.85213 403.65396 -405.76443 403.30336 -405.60095 402.98648 -405.37906 402.71294 -405.10552 402.49105 -404.78864 402.32757 -404.43804 402.22744 -404.06437 402.19373 -403.679 402.22744 -403.29363 402.32757 -402.91996 402.49105 -402.56936 402.71294 -402.25248 402.98648 -401.97894 403.30336 -401.75705 403.65396 -401.59357 403.97938 -401.50637 404.13297 -401.42642 404.23838 -401.28905 404.27586 -401.12 404.23838 -400.95095 404.13297 -400.81358 403.97938 -400.73363 403.65396 -400.64643 403.30336 -400.48295 402.98648 -400.26106 402.71294 -399.98752 402.49105 -399.67064 402.32757 -399.32004 402.22744 -398.94637 402.19373 -398.561 402.22744 -398.17563 402.32757 -397.80196 402.49105 -397.45136 402.71294 -397.13448 402.98648 -396.86094 403.30336 -396.63905 403.65396 -396.47557 403.97938 -396.38837 404.13297 -396.30842 404.23838 -396.17105 404.27586 -396.002 404.23838 -395.83295 404.13297 -395.69558 403.97938 -395.61563 403.65396 -395.52843 403.30336 -395.36495 402.98648 -395.14306 402.71294 -394.86952 402.49105 -394.55264 402.32757 -394.20204 402.22744 -393.82837 402.19373 -393.443 402.22744 -393.05763 402.32757 -392.68396 402.49105 -392.33336 402.71294 -392.01648 402.98648 -391.74294 403.30336 -391.52105 403.65396 -391.35757 404.02763 -391.25744 404.413 -391.22373 404.79837 -391.25744 405.17204 -391.35757 405.52264 -391.52105 405.69465 -391.6415 405.8038 -391.69533 405.92408 -391.71384 406.97256 -391.71213 407.03389 -391.70645 412.42211 -391.70645 412.75938 -391.7377 413.0673 -391.82531 413.35387 -391.96801 413.60935 -392.16094 413.82503 -392.39753 413.99356 -392.66972 414.10921 -392.96824 414.16804 -393.28293 414.16804 -393.42634 414.20221 -393.58812 414.29891 -393.72226 414.44159 -393.80583 414.60588 -393.82454 415.0445 -393.78286 415.27719 -393.80322 415.44063 -393.78351 415.58229 -393.69965 415.67817 -393.56584 415.71205 -393.40474 415.71205 -383.70997 415.73824 -383.47192 415.81363 -383.25646 415.9324 -383.06696 416.09857 -382.88942 416.17977 -382.75994 416.20649 -382.60947 416.17482 -382.45995 416.08938 -382.33323 415.82189 -382.06573 415.67207 -381.87889 415.57303 -381.67323 415.52224 -381.45068 415.5152 -381.32533 415.5152 -376.42652 415.54139 -376.18847 415.61678 -375.97301 415.73822 -375.77973 415.82189 -375.68612 416.19972 -375.30829 416.38656 -375.15847 416.59222 -375.05943 416.81477 -375.00864 416.94012 -375.0016 431.09088 -375.0016 431.32114 -375.02646 431.52483 -375.09393 431.6739 -375.11354 431.81968 -375.07673 431.94156 -374.9887 432.02234 -374.86189 432.0506 -374.71422 432.0506 -370.32417 432.07679 -370.08612 432.15218 -369.87066 432.20202 -369.78048 432.35703 -369.5861 432.42185 -369.46882 432.4443 -369.33671 432.4443 -366.78087 432.47049 -366.54282 432.54588 -366.32736 432.66732 -366.13408 432.75099 -366.04047 435.09732 -363.69414 435.28416 -363.54432 435.48982 -363.44528 435.70825 -363.39519 435.93449 -363.3872 436.02391 -363.37382 436.27163 -363.30744 436.657 -363.27373 437.20875 -363.32452 437.34853 -363.28311 437.46419 -363.19436 437.54037 -363.07006 437.56694 -362.92671 437.56694 -362.77676 437.62435 -362.46961 437.73646 -362.18023 437.93492 -361.86717 437.99002 -361.72789 437.99002 -361.57811 437.93492 -361.43883 437.73646 -361.12577 437.62435 -360.83639 437.56694 -360.52924 437.56694 -360.21676 437.62663 -359.89745 437.62059 -359.7234 437.54117 -359.56841 437.40341 -359.46186 437.23344 -359.42395 435.9749 -359.42395 435.85462 -359.44246 435.74547 -359.49629 435.40464 -359.73495 435.05404 -359.89843 434.68037 -359.99856 434.295 -360.03227 433.90963 -359.99856 433.53596 -359.89843 433.18536 -359.73495 432.86848 -359.51306 432.59494 -359.23952 432.37305 -358.92264 432.20957 -358.57204 432.10944 -358.19837 432.07573 -357.813 432.10944 -357.42763 432.20957 -357.05396 432.37305 -356.70336 432.59494 -356.38648 432.86848 -356.11294 433.18536 -355.89105 433.53596 -355.72757 433.90963 -355.62744 434.27295 -355.59566 434.40713 -355.5597 434.52093 -355.48002 434.60061 -355.36623 434.63656 -355.23204 434.66844 -354.86763 434.76857 -354.49396 434.93152 -354.14451 435.18468 -353.78775 435.24435 -353.66161 435.25706 -353.52265 435.22126 -353.38778 435.14131 -353.27342 433.05779 -351.1899 432.85648 -350.94459 432.71619 -350.68214 432.6298 -350.39736 432.5987 -350.08155 432.5987 -346.09765 432.56825 -345.94458 432.48154 -345.81481 432.35177 -345.7281 432.1987 -345.69765 431.91206 -345.69765 431.66319 -345.66961 431.44814 -345.59436 431.25522 -345.47314 431.09411 -345.31203 431.04719 -345.23736 430.93629 -345.12137 430.78874 -345.0583 430.62826 -345.0583 430.48071 -345.12137 430.36981 -345.23736 430.32289 -345.31203 430.16178 -345.47314 429.96886 -345.59436 429.75381 -345.66961 429.50494 -345.69765 425.09106 -345.69765 424.84219 -345.66961 424.62714 -345.59436 424.43422 -345.47314 424.27311 -345.31203 424.15189 -345.11911 424.07664 -344.90406 424.0486 -344.65519 424.0486 -339.27881 424.07664 -339.02994 424.15189 -338.81489 424.27311 -338.62197 424.43422 -338.46086 424.62714 -338.33964 424.84219 -338.26439 425.09106 -338.23635 429.50494 -338.23635 429.75381 -338.26439 429.96886 -338.33964 430.16178 -338.46086 430.32289 -338.62197 430.36981 -338.69664 430.48071 -338.81263 430.62826 -338.8757 430.78874 -338.8757 430.93629 -338.81263 431.04719 -338.69664 431.09411 -338.62197 431.25522 -338.46086 431.44814 -338.33964 431.66319 -338.26439 431.91206 -338.23635 436.32594 -338.23635 Z M 417.20186 -356.14855 L 417.53149 -356.118 422.14451 -356.118 422.47414 -356.14855 422.77469 -356.23406 423.0544 -356.37334 423.30376 -356.56165 423.51427 -356.79257 423.67877 -357.05824 423.79165 -357.34961 423.84906 -357.65676 423.84906 -357.96924 423.79165 -358.27639 423.67954 -358.56577 423.48108 -358.87883 423.42598 -359.01811 423.42598 -359.16789 423.48108 -359.30717 423.67954 -359.62023 423.79165 -359.90961 423.84906 -360.21676 423.84906 -360.52924 423.79165 -360.83639 423.67954 -361.12577 423.48108 -361.43883 423.42598 -361.57811 423.42598 -361.72789 423.48108 -361.86717 423.67954 -362.18023 423.79165 -362.46961 423.84906 -362.77676 423.84906 -363.08924 423.79165 -363.39639 423.67954 -363.68577 423.48108 -363.99883 423.42598 -364.13811 423.42598 -364.28789 423.48108 -364.42717 423.67954 -364.74023 423.79165 -365.02961 423.84906 -365.33676 423.84906 -365.64924 423.79165 -365.95639 423.67877 -366.24776 423.51427 -366.51343 423.30376 -366.74435 423.0544 -366.93266 422.77469 -367.07194 422.47414 -367.15745 422.14451 -367.188 417.53149 -367.188 417.20186 -367.15745 416.90131 -367.07194 416.78125 -367.02402 416.68967 -367.0134 412.71965 -367.0134 412.40384 -366.9823 412.11906 -366.89591 411.85661 -366.75562 411.71291 -366.63769 411.55438 -366.5584 411.37715 -366.55539 411.21602 -366.62927 411.10264 -366.76552 411.05926 -366.93739 411.05102 -367.28388 411.00132 -367.50003 410.90228 -367.70569 410.75246 -367.89253 407.61873 -371.02626 407.43189 -371.17608 407.22623 -371.27512 407.00368 -371.32591 406.87833 -371.33295 399.60373 -371.33295 399.45066 -371.3634 399.32089 -371.45011 398.97161 -371.79939 398.8849 -371.92916 398.85445 -372.08223 398.85445 -372.67835 398.8849 -372.83142 398.97161 -372.96119 399.10138 -373.0479 399.25445 -373.07835 403.64894 -373.07835 403.89781 -373.10639 404.11286 -373.18164 404.30578 -373.30286 404.46689 -373.46397 404.58811 -373.65689 404.66336 -373.87194 404.6914 -374.12081 404.6914 -379.49719 404.66336 -379.74606 404.58811 -379.96111 404.49142 -380.115 404.44574 -380.21708 404.43011 -380.32781 404.43011 -381.26604 404.44574 -381.37678 404.52411 -381.53089 404.59936 -381.74594 404.6274 -381.99481 404.6274 -387.37119 404.59936 -387.62006 404.52411 -387.83511 404.40289 -388.02803 404.24178 -388.18914 404.04886 -388.31036 403.83381 -388.38561 403.58494 -388.41365 399.17106 -388.41365 398.92219 -388.38561 398.70714 -388.31036 398.51422 -388.18914 398.35311 -388.02803 398.30619 -387.95336 398.19529 -387.83737 398.04774 -387.7743 397.88726 -387.7743 397.73971 -387.83737 397.62881 -387.95336 397.58189 -388.02803 397.44105 -388.16887 397.35434 -388.29864 397.32389 -388.45171 397.35434 -388.60479 397.44105 -388.73456 400.23468 -391.52819 400.28343 -391.57924 400.48388 -391.84468 400.62593 -392.12996 400.71314 -392.43647 400.74426 -392.77229 400.74426 -409.08778 400.74263 -409.15836 400.69667 -409.4878 400.5954 -409.78996 400.44032 -410.06837 400.22486 -410.32783 392.85901 -417.69359 392.80796 -417.74233 392.54252 -417.94278 392.25724 -418.08483 391.95073 -418.17204 391.61491 -418.20316 389.92514 -418.20316 389.81611 -418.21155 384.42789 -418.21155 384.09062 -418.1803 383.7827 -418.09269 383.49613 -417.94999 383.24065 -417.75706 383.02497 -417.52047 382.85644 -417.24828 382.74079 -416.94976 382.68196 -416.63507 382.68196 -416.31493 382.74079 -416.00024 382.85644 -415.70172 383.03949 -415.40607 383.0926 -415.269 383.0926 -415.122 383.03949 -414.98493 382.85644 -414.68928 382.74079 -414.39076 382.68196 -414.07607 382.68196 -413.75593 382.74079 -413.44124 382.85644 -413.14272 383.03949 -412.84707 383.0926 -412.71 383.0926 -412.563 383.03949 -412.42593 382.85644 -412.13028 382.74079 -411.83176 382.68196 -411.51707 382.68196 -411.19693 382.74079 -410.88224 382.85644 -410.58372 383.02497 -410.31153 383.24065 -410.07494 383.49613 -409.88201 383.7827 -409.73931 384.09062 -409.6517 384.42789 -409.62045 389.81611 -409.62045 390.15338 -409.6517 390.4613 -409.73931 390.74787 -409.88201 391.00335 -410.07494 391.21903 -410.31153 391.38756 -410.58372 391.50321 -410.88224 391.56204 -411.19693 391.56204 -411.51707 391.50321 -411.83176 391.38756 -412.13028 391.20451 -412.42593 391.1514 -412.563 391.1514 -412.71 391.20451 -412.84707 391.38756 -413.14272 391.48216 -413.38689 391.56712 -413.51997 391.69696 -413.60979 391.85145 -413.64238 392.00651 -413.61265 392.13799 -413.52524 397.16978 -408.49352 397.25649 -408.36375 397.28694 -408.21067 397.28694 -405.18414 397.25188 -405.02038 397.15286 -404.88533 397.00722 -404.80266 396.8405 -404.78685 396.68192 -404.84068 396.55928 -404.95471 396.38506 -405.20352 396.11152 -405.47706 395.79464 -405.69895 395.44404 -405.86243 394.93983 -405.99948 394.82938 -406.07758 393.45029 -407.45661 393.39926 -407.50533 393.13382 -407.70578 392.84854 -407.84783 392.54203 -407.93504 392.20621 -407.96616 389.92514 -407.96616 389.81611 -407.97455 384.42789 -407.97455 384.09062 -407.9433 383.7827 -407.85569 383.49613 -407.71299 383.24065 -407.52006 383.02497 -407.28347 382.85644 -407.01128 382.74079 -406.71276 382.68196 -406.39807 382.68196 -406.07793 382.71884 -405.88066 382.71281 -405.70661 382.63338 -405.55162 382.49563 -405.44507 382.32565 -405.40716 379.13012 -405.40716 378.97705 -405.43761 378.84728 -405.52432 378.14296 -406.22633 377.87752 -406.42678 377.59224 -406.56883 377.28573 -406.65604 376.94991 -406.68716 369.62251 -406.68716 369.50223 -406.70567 369.39308 -406.7595 369.21964 -406.88095 368.86904 -407.04443 368.49537 -407.14456 368.11 -407.17827 367.72463 -407.14456 367.35096 -407.04443 367.00036 -406.88095 366.68348 -406.65906 366.40994 -406.38552 366.18805 -406.06864 366.02457 -405.71804 365.92444 -405.34437 365.89073 -404.959 365.92444 -404.57363 366.02457 -404.19996 366.18805 -403.84936 366.40994 -403.53248 366.68348 -403.25894 367.00036 -403.03705 367.35096 -402.87357 367.72463 -402.77344 368.11 -402.73973 368.49537 -402.77344 368.86904 -402.87357 369.21964 -403.03705 369.39165 -403.1575 369.5008 -403.21133 369.62108 -403.22984 376.08668 -403.22984 376.23975 -403.19939 376.36952 -403.11268 377.07384 -402.41067 377.33928 -402.21022 377.62456 -402.06817 377.93107 -401.98096 378.26689 -401.94984 382.32546 -401.94984 382.49544 -401.91193 382.6332 -401.80538 382.71262 -401.65039 382.71865 -401.47634 382.68196 -401.28007 382.68196 -400.95993 382.74079 -400.64524 382.85644 -400.34672 383.03949 -400.05107 383.0926 -399.914 383.0926 -399.767 383.03949 -399.62993 382.85644 -399.33428 382.74079 -399.03576 382.68196 -398.72107 382.68196 -398.40093 382.74079 -398.08624 382.85644 -397.78772 383.03949 -397.49207 383.0926 -397.355 383.0926 -397.208 383.03949 -397.07093 382.85644 -396.77528 382.74079 -396.47676 382.68196 -396.16207 382.68196 -395.84193 382.74079 -395.52724 382.85644 -395.22872 383.02497 -394.95653 383.24065 -394.71994 383.49613 -394.52701 383.7827 -394.38431 384.09062 -394.2967 384.42789 -394.26545 389.81611 -394.26545 390.15338 -394.2967 390.4613 -394.38431 390.74787 -394.52701 391.00335 -394.71994 391.21903 -394.95653 391.38756 -395.22872 391.50321 -395.52724 391.56204 -395.84193 391.56204 -396.16207 391.50321 -396.47676 391.38756 -396.77528 391.32935 -396.86929 391.27176 -397.03682 391.29218 -397.2128 391.38659 -397.3627 393.07892 -399.05512 393.12763 -399.10614 393.32808 -399.37158 393.47013 -399.65686 393.55734 -399.96337 393.58846 -400.29919 393.58846 -401.26071 393.61503 -401.40406 393.6912 -401.52836 393.80686 -401.61711 393.94665 -401.65852 394.09199 -401.64708 394.29963 -401.59144 394.685 -401.55773 395.07037 -401.59144 395.44404 -401.69157 395.79464 -401.85505 396.11152 -402.07694 396.38506 -402.35048 396.55928 -402.59929 396.68192 -402.71332 396.8405 -402.76715 397.00722 -402.75134 397.15286 -402.66867 397.25188 -402.53362 397.28694 -402.36986 397.28694 -393.63552 397.25649 -393.48245 397.16978 -393.35268 393.33812 -389.52101 393.28937 -389.46996 393.08892 -389.20452 392.94505 -388.9156 392.87787 -388.69642 392.79566 -388.54933 392.66017 -388.44914 392.49544 -388.41365 392.35006 -388.41365 392.10119 -388.38561 391.88614 -388.31036 391.73249 -388.21382 391.63041 -388.16814 391.51968 -388.15251 389.34517 -388.15251 389.23444 -388.16814 389.13236 -388.21382 388.97911 -388.31011 388.76406 -388.38536 388.51519 -388.4134 383.13881 -388.4134 382.88994 -388.38536 382.67489 -388.31011 382.48197 -388.18889 382.32086 -388.02778 382.19964 -387.83486 382.12439 -387.61981 382.09635 -387.37094 382.09635 -382.95706 382.12439 -382.70819 382.19964 -382.49314 382.32086 -382.30022 382.48197 -382.13911 382.67489 -382.01789 382.88994 -381.94264 383.13881 -381.9146 388.51519 -381.9146 388.76406 -381.94264 388.97911 -382.01789 389.13236 -382.11418 389.23444 -382.15986 389.34517 -382.17549 390.35971 -382.17549 390.51279 -382.14505 390.64255 -382.05834 390.72926 -381.92857 390.75971 -381.77549 390.72926 -381.62242 390.64255 -381.49265 389.83769 -380.68778 389.68787 -380.50094 389.58883 -380.29528 389.53804 -380.07273 389.531 -379.94738 389.531 -368.93263 389.50055 -368.77956 389.41384 -368.64979 388.65659 -367.89253 388.50677 -367.70569 388.40773 -367.50003 388.35694 -367.27748 388.3499 -367.15213 388.3499 -364.493 388.31945 -364.33993 388.23274 -364.21016 388.10297 -364.12345 387.9499 -364.093 387.00246 -364.093 386.75359 -364.06496 386.53854 -363.98971 386.34562 -363.86849 386.18451 -363.70738 386.06329 -363.51446 385.98804 -363.29941 385.96 -363.05054 385.96 -360.33546 385.98804 -360.08659 386.06329 -359.87154 386.16659 -359.70714 386.21067 -359.61044 386.26709 -359.42446 386.40738 -359.16201 386.60869 -358.9167 387.5231 -358.00229 387.76841 -357.80098 388.03086 -357.66069 388.31564 -357.5743 388.63145 -357.5432 400.14775 -357.5432 400.46356 -357.5743 400.74834 -357.66069 401.01079 -357.80098 401.0834 -357.86056 401.2024 -357.92797 401.33716 -357.95135 401.47191 -357.92797 401.62781 -357.83028 401.89026 -357.68999 402.17504 -357.6036 402.49085 -357.5725 410.80695 -357.5725 411.12276 -357.6036 411.40754 -357.68999 411.66999 -357.83028 411.9153 -358.03159 412.28121 -358.3975 412.48252 -358.64281 412.62281 -358.90526 412.7092 -359.19004 412.7403 -359.50585 412.7403 -363.21841 412.77075 -363.37148 412.85746 -363.50125 413.21245 -363.85624 413.34222 -363.94295 413.49529 -363.9734 415.52396 -363.9734 415.67533 -363.94366 415.80418 -363.85884 415.89136 -363.73158 415.92389 -363.58079 415.82694 -363.08924 415.82694 -362.77676 415.88435 -362.46961 415.99646 -362.18023 416.19492 -361.86717 416.25002 -361.72789 416.25002 -361.57811 416.19492 -361.43883 415.99646 -361.12577 415.88435 -360.83639 415.82694 -360.52924 415.82694 -360.21676 415.88435 -359.90961 415.99646 -359.62023 416.19492 -359.30717 416.25002 -359.16789 416.25002 -359.01811 416.19492 -358.87883 415.99646 -358.56577 415.88435 -358.27639 415.82694 -357.96924 415.82694 -357.65676 415.88435 -357.34961 415.99723 -357.05824 416.16173 -356.79257 416.37224 -356.56165 416.6216 -356.37334 416.90131 -356.23406 417.20186 -356.14855 Z M 364.64952 -307.29224 L 364.77487 -307.2852 372.62643 -307.2852 372.86448 -307.31139 373.07994 -307.38678 373.27322 -307.50822 373.36683 -307.59189 376.10686 -310.33192 376.25668 -310.51876 376.35572 -310.72442 376.40651 -310.94697 376.41355 -311.07232 376.41355 -316.95538 376.38736 -317.19343 376.31197 -317.40889 376.19053 -317.60217 376.10686 -317.69578 365.29598 -328.50666 365.10914 -328.65648 364.90348 -328.75552 364.68093 -328.80631 364.55558 -328.81335 354.78407 -328.81335 354.62197 -328.84767 354.48768 -328.94473 354.40425 -329.08788 354.38599 -329.25256 354.4161 -329.44943 354.49971 -329.60254 354.57496 -329.81759 354.603 -330.06646 354.603 -332.78154 354.57496 -333.03041 354.49971 -333.24546 354.37849 -333.43838 354.21738 -333.59949 354.02446 -333.72071 353.80941 -333.79596 353.56054 -333.824 352.22546 -333.824 351.97659 -333.79596 351.76154 -333.72071 351.56862 -333.59949 351.40751 -333.43838 351.28629 -333.24546 351.21104 -333.03041 351.183 -332.78154 351.183 -330.6976 351.15255 -330.54453 351.06584 -330.41476 350.93607 -330.32805 350.783 -330.2976 341.42 -330.2976 341.26693 -330.32805 341.13716 -330.41476 341.05045 -330.54453 341.02 -330.6976 341.02 -332.78154 340.99196 -333.03041 340.91671 -333.24546 340.79549 -333.43838 340.63438 -333.59949 340.44146 -333.72071 340.22641 -333.79596 339.97754 -333.824 338.64246 -333.824 338.39359 -333.79596 338.17854 -333.72071 337.98562 -333.59949 337.82451 -333.43838 337.70329 -333.24546 337.62804 -333.03041 337.6 -332.78154 337.6 -331.11035 337.5682 -330.95406 337.47786 -330.82262 337.34335 -330.73692 337.18604 -330.71059 337.03095 -330.74783 336.78304 -330.86343 336.40937 -330.96356 336.024 -330.99727 335.63863 -330.96356 335.26496 -330.86343 334.91436 -330.69995 334.59748 -330.47806 334.32394 -330.20452 334.10205 -329.88764 333.93892 -329.5378 333.84847 -329.41363 333.71788 -329.33271 333.56643 -329.30697 333.41644 -329.34022 333.29005 -329.42755 333.2059 -329.55608 333.1764 -329.70685 333.1764 -331.0826 333.20685 -331.23567 333.29356 -331.36544 333.42333 -331.45215 333.5764 -331.4826 333.66319 -331.4826 333.91206 -331.51064 334.12711 -331.58589 334.32003 -331.70711 334.48114 -331.86822 334.60236 -332.06114 334.67761 -332.27619 334.70565 -332.52506 334.70565 -336.93894 334.67761 -337.18781 334.60236 -337.40286 334.48114 -337.59578 334.32003 -337.75689 334.24536 -337.80381 334.12937 -337.91471 334.0663 -338.06226 334.0663 -338.22274 334.12937 -338.37029 334.24536 -338.48119 334.32003 -338.52811 334.48114 -338.68922 334.60236 -338.88214 334.67761 -339.09719 334.70565 -339.34606 334.70565 -343.75994 334.67761 -344.00881 334.60236 -344.22386 334.48114 -344.41678 334.32003 -344.57789 334.12711 -344.69911 333.91206 -344.77436 333.66319 -344.8024 328.28681 -344.8024 328.03794 -344.77436 327.82289 -344.69911 327.62997 -344.57789 327.46886 -344.41678 327.34764 -344.22386 327.27239 -344.00881 327.25248 -343.83214 327.20034 -343.67507 327.08908 -343.55256 326.93775 -343.48557 326.77225 -343.48557 326.62092 -343.55256 326.50966 -343.67507 326.45752 -343.83214 326.43761 -344.00881 326.36236 -344.22386 326.24114 -344.41678 326.08003 -344.57789 325.91079 -344.68423 325.81087 -344.77352 325.74605 -344.89081 325.72361 -345.02292 325.72361 -345.20529 325.75698 -345.36525 325.85154 -345.49851 326.01706 -345.59179 326.20998 -345.71301 326.37109 -345.87412 326.49231 -346.06704 326.56756 -346.28209 326.5956 -346.53096 326.5956 -351.80104 326.56756 -352.04991 326.49231 -352.26496 326.37109 -352.45788 326.20998 -352.61899 326.01706 -352.74021 325.80201 -352.81546 325.55314 -352.8435 320.04686 -352.8435 319.79799 -352.81546 319.58294 -352.74021 319.39002 -352.61899 319.22891 -352.45788 319.10769 -352.26496 319.03244 -352.04991 319.0044 -351.80104 319.0044 -346.53096 319.03244 -346.28209 319.10769 -346.06704 319.22891 -345.87412 319.39002 -345.71301 319.55941 -345.60658 319.65933 -345.51728 319.72415 -345.4 319.74659 -345.26789 319.74659 -345.02304 319.72415 -344.89093 319.65933 -344.77365 319.55941 -344.68436 319.38997 -344.57789 319.22886 -344.41678 319.10764 -344.22386 319.03239 -344.00881 319.00435 -343.75994 319.00435 -339.34606 319.03239 -339.09719 319.10764 -338.88214 319.22886 -338.68922 319.38997 -338.52811 319.46464 -338.48119 319.58063 -338.37029 319.6437 -338.22274 319.6437 -338.06226 319.58063 -337.91471 319.46464 -337.80381 319.38997 -337.75689 319.22886 -337.59578 319.10764 -337.40286 319.03239 -337.18781 319.00435 -336.93894 319.00435 -332.52506 319.03239 -332.27619 319.10764 -332.06114 319.22886 -331.86822 319.38997 -331.70711 319.58289 -331.58589 319.79794 -331.51064 320.04681 -331.4826 325.42319 -331.4826 325.67206 -331.51064 325.88711 -331.58589 326.04116 -331.68268 326.14324 -331.72836 326.25397 -331.74399 327.45603 -331.74399 327.56676 -331.72836 327.66884 -331.68268 327.82289 -331.58589 328.03794 -331.51064 328.28681 -331.4826 328.3742 -331.4826 328.52727 -331.45215 328.65704 -331.36544 328.74375 -331.23567 328.7742 -331.0826 328.7742 -317.29913 328.78296 -317.09859 328.80801 -316.90825 328.84957 -316.72081 328.9073 -316.53771 328.98077 -316.36034 329.06942 -316.19004 329.17258 -316.02812 329.28945 -315.87581 329.42506 -315.72782 330.48176 -314.67111 330.53794 -314.60148 330.82773 -314.31656 330.88113 -314.27175 332.98325 -312.16972 333.1312 -312.03415 333.28356 -311.91725 333.44544 -311.81412 333.61578 -311.72545 333.79311 -311.652 333.97626 -311.59426 334.16364 -311.55272 334.35405 -311.52765 334.55453 -311.5189 336.01217 -311.5189 336.15481 -311.4926 336.2787 -311.41716 336.36754 -311.30249 336.41304 -311.13359 336.48829 -310.91854 336.60951 -310.72562 336.77062 -310.56451 336.96354 -310.44329 337.17859 -310.36804 337.42746 -310.34 339.74254 -310.34 339.99141 -310.36804 340.20646 -310.44329 340.39938 -310.56451 340.56049 -310.72562 340.68171 -310.91854 340.80246 -311.30249 340.8913 -311.41716 341.01519 -311.4926 341.15783 -311.5189 341.91434 -311.5189 342.31375 -311.55384 342.6841 -311.65308 343.03159 -311.81511 343.34566 -312.03503 343.61677 -312.30614 343.83669 -312.62021 343.99872 -312.9677 344.09796 -313.33805 344.13137 -313.72 344.09796 -314.10195 343.99872 -314.4723 343.83669 -314.81979 343.76409 -314.92347 343.69782 -315.08344 343.70538 -315.25643 343.78533 -315.41002 343.9227 -315.51542 344.09175 -315.5529 355.90777 -315.5529 356.06084 -315.52245 356.19061 -315.43574 364.03447 -307.59189 364.22131 -307.44207 364.42697 -307.34303 364.64952 -307.29224 Z M 321.07894 -385.92564 L 321.32781 -385.8976 326.70419 -385.8976 326.95306 -385.92564 327.16811 -386.00089 327.32088 -386.09688 327.42296 -386.14256 327.5337 -386.15819 329.90623 -386.15819 330.36645 -386.19268 330.80175 -386.29204 331.21738 -386.45516 331.60405 -386.67841 331.95314 -386.95679 332.25683 -387.2841 332.50835 -387.65301 332.70208 -388.05529 332.83368 -388.48194 332.90023 -388.92345 332.90023 -389.36995 332.83368 -389.81146 332.70208 -390.23811 332.50835 -390.64039 332.25683 -391.0093 331.95314 -391.33661 331.60405 -391.61499 331.21738 -391.83824 330.80175 -392.00136 330.36645 -392.10072 329.90623 -392.13521 327.53465 -392.13521 327.38158 -392.16565 327.25181 -392.25236 327.1651 -392.38213 327.13465 -392.5788 327.1651 -392.73187 327.25181 -392.86164 327.38158 -392.94835 327.53465 -392.97879 328.99706 -392.97879 329.10506 -392.98081 329.45358 -393.0135 329.549 -393.02971 329.88877 -393.11397 329.98071 -393.14423 330.30412 -393.27819 330.39052 -393.3218 330.69035 -393.50247 330.76929 -393.55848 331.03884 -393.78182 331.11664 -393.85675 333.60655 -396.34666 333.68148 -396.42446 333.90482 -396.69401 333.96083 -396.77295 334.1415 -397.07278 334.18511 -397.15918 334.31907 -397.48259 334.34933 -397.57453 334.43359 -397.9143 334.4498 -398.00972 334.48249 -398.35824 334.48451 -398.46624 334.48451 -411.0188 334.51495 -411.17187 334.60166 -411.30164 334.73143 -411.38835 334.8845 -411.41879 335.87766 -411.41879 336.05042 -411.37956 336.18929 -411.26956 336.24477 -411.20062 336.66545 -410.7927 337.13308 -410.43956 337.64056 -410.14657 338.18019 -409.91816 338.74381 -409.7578 339.32286 -409.66791 339.90857 -409.64987 340.49205 -409.70394 341.06447 -409.8293 341.61714 -410.02405 342.14169 -410.28525 342.63017 -410.60892 343.07517 -410.99018 343.46995 -411.42323 343.80851 -411.9015 344.08574 -412.41776 344.29742 -412.96418 344.44035 -413.53246 344.51236 -414.11401 344.51236 -414.69999 344.44035 -415.28154 344.29742 -415.84982 344.08574 -416.39624 343.80851 -416.9125 343.46995 -417.39077 343.07517 -417.82382 342.63017 -418.20508 342.14169 -418.52875 341.61714 -418.78995 341.06447 -418.9847 340.49205 -419.11006 339.90857 -419.16413 339.32286 -419.14609 338.74381 -419.0562 338.18019 -418.89584 337.64056 -418.66743 337.13308 -418.37444 336.66545 -418.0213 336.24477 -417.61338 336.18977 -417.54504 336.0509 -417.43504 335.87814 -417.39581 326.73614 -417.39581 326.62809 -417.39378 326.27962 -417.3611 326.18414 -417.34488 325.84444 -417.26063 325.75244 -417.23036 325.42909 -417.09641 325.34263 -417.05277 325.04285 -416.87213 324.96387 -416.81609 324.69436 -416.59279 324.61653 -416.51781 323.50552 -415.40676 323.37575 -415.32005 323.22267 -415.2896 321.18396 -415.2896 320.93509 -415.26156 320.72004 -415.18631 320.52712 -415.06509 320.36601 -414.90398 320.24479 -414.71106 320.16954 -414.49601 320.1415 -414.24714 320.1415 -408.74086 320.16954 -408.49199 320.24479 -408.27694 320.36601 -408.08402 320.52712 -407.92291 320.72004 -407.80169 320.93509 -407.72644 321.18396 -407.6984 326.45404 -407.6984 326.70291 -407.72644 326.91796 -407.80169 327.11088 -407.92291 327.27199 -408.08402 327.39321 -408.27694 327.46846 -408.49199 327.4965 -408.74086 327.4965 -410.77929 327.52695 -410.93236 327.61365 -411.06213 327.82465 -411.27313 327.95442 -411.35984 328.10749 -411.39029 328.26057 -411.35984 328.39034 -411.27313 328.47705 -411.14336 328.50749 -410.99029 328.50749 -399.86606 328.47705 -399.71299 328.39034 -399.58322 327.88008 -399.07296 327.75031 -398.98625 327.5337 -398.95581 327.42296 -398.97144 327.32088 -399.01712 327.16811 -399.11311 326.95306 -399.18836 326.70419 -399.2164 321.32781 -399.2164 321.07894 -399.18836 320.86389 -399.11311 320.67097 -398.99189 320.50986 -398.83078 320.38864 -398.63786 320.31339 -398.42281 320.28535 -398.17394 320.28535 -393.76006 320.31339 -393.51119 320.38864 -393.29614 320.50986 -393.10322 320.67097 -392.94211 320.74485 -392.89569 320.86084 -392.78479 320.9239 -392.63724 320.9239 -392.47676 320.86084 -392.32921 320.74485 -392.21831 320.67097 -392.17189 320.50986 -392.01078 320.38864 -391.81786 320.31339 -391.60281 320.28535 -391.35394 320.28535 -386.94006 320.31339 -386.69119 320.38864 -386.47614 320.50986 -386.28322 320.67097 -386.12211 320.86389 -386.00089 321.07894 -385.92564 Z M 459.42254 -310.34 L 459.67141 -310.36804 459.88646 -310.44329 460.07938 -310.56451 460.24049 -310.72562 460.36171 -310.91854 460.43696 -311.13359 460.465 -311.38246 460.465 -316.05754 460.43696 -316.30641 460.36171 -316.52146 460.24049 -316.71438 460.07938 -316.87549 459.88646 -316.99671 459.67141 -317.07196 459.42254 -317.1 458.45976 -317.1 458.30668 -317.13045 458.17691 -317.21716 457.98684 -317.40724 457.90114 -317.5346 457.86972 -317.68487 457.89721 -317.8359 458.10111 -318.15889 458.17636 -318.37394 458.2044 -318.62281 458.2044 -323.99919 458.17636 -324.24806 458.10111 -324.46311 458.00502 -324.61604 457.95934 -324.71812 457.94371 -324.82886 457.94371 -326.03314 457.95934 -326.14388 458.00502 -326.24596 458.10111 -326.39889 458.17636 -326.61394 458.2044 -326.86281 458.2044 -332.23919 458.17636 -332.48806 458.10111 -332.70311 458.00502 -332.85604 457.95934 -332.95812 457.94371 -333.06886 457.94371 -335.04803 457.90922 -335.50825 457.80986 -335.94355 457.64674 -336.35918 457.42349 -336.74585 457.14511 -337.09494 456.8178 -337.39863 456.44889 -337.65015 456.04661 -337.84388 455.61996 -337.97548 455.17845 -338.04203 454.73195 -338.04203 454.29044 -337.97548 453.86379 -337.84388 453.46151 -337.65015 453.0926 -337.39863 452.76529 -337.09494 452.48691 -336.74585 452.26366 -336.35918 452.10054 -335.94355 452.00118 -335.50825 451.96669 -335.04803 451.96669 -333.06949 451.95106 -332.95876 451.88369 -332.82215 451.77279 -332.70616 451.62524 -332.6431 451.46476 -332.6431 451.31721 -332.70616 451.20631 -332.82215 451.15989 -332.89603 450.99878 -333.05714 450.80586 -333.17836 450.60359 -333.24914 450.46363 -333.33347 450.36908 -333.46673 450.3357 -333.62669 450.33722 -334.67112 450.35427 -334.866 450.32056 -335.25137 450.22043 -335.62504 450.05695 -335.97564 449.83506 -336.29252 449.56152 -336.56606 449.24464 -336.78795 448.89404 -336.95143 448.52037 -337.05156 448.135 -337.08527 447.74963 -337.05156 447.37596 -336.95143 447.02536 -336.78795 446.70848 -336.56606 446.43494 -336.29252 446.21305 -335.97564 446.04957 -335.62504 445.94944 -335.25137 445.91573 -334.866 445.9335 -334.6454 445.9335 -333.62641 445.90012 -333.46645 445.80557 -333.33319 445.66561 -333.24886 445.46414 -333.17836 445.27122 -333.05714 445.11011 -332.89603 444.98889 -332.70311 444.91364 -332.48806 444.8856 -332.23919 444.8856 -326.86281 444.91364 -326.61394 444.98889 -326.39889 445.11011 -326.20597 445.27122 -326.04486 445.46414 -325.92364 445.67919 -325.84839 445.85586 -325.82848 446.01293 -325.77634 446.13544 -325.66508 446.20243 -325.51375 446.20243 -325.34825 446.13544 -325.19692 446.01293 -325.08566 445.85586 -325.03352 445.67919 -325.01361 445.46414 -324.93836 445.27122 -324.81714 445.11011 -324.65603 444.98889 -324.46311 444.94137 -324.3273 444.85678 -324.18707 444.72309 -324.09249 444.5627 -324.05942 444.40249 -324.09339 444.26933 -324.18872 444.18553 -324.32942 444.0946 -324.59403 443.97399 -324.78598 443.81288 -324.94709 443.61996 -325.06831 443.40491 -325.14356 443.15604 -325.1716 437.88596 -325.1716 437.63709 -325.14356 437.42204 -325.06831 437.22912 -324.94709 437.06801 -324.78598 436.94679 -324.59306 436.87154 -324.37801 436.8435 -324.12914 436.8435 -318.62286 436.87154 -318.37399 436.94679 -318.15894 437.06801 -317.96602 437.22912 -317.80491 437.42204 -317.68369 437.63709 -317.60844 437.88596 -317.5804 443.15604 -317.5804 443.40491 -317.60844 443.61996 -317.68369 443.81288 -317.80491 443.97399 -317.96602 444.09521 -318.15894 444.16449 -318.35693 444.24882 -318.49689 444.38208 -318.59144 444.54204 -318.62482 444.702 -318.59144 444.83526 -318.49689 444.91959 -318.35693 444.98889 -318.15889 445.11011 -317.96597 445.27122 -317.80486 445.46414 -317.68364 445.67919 -317.60839 445.92806 -317.58035 450.34194 -317.58035 450.59081 -317.60839 450.80586 -317.68364 450.99878 -317.80486 451.15989 -317.96597 451.20631 -318.03985 451.31721 -318.15584 451.46476 -318.2189 451.62524 -318.2189 451.77279 -318.15584 451.88369 -318.03985 451.93011 -317.96597 452.09122 -317.80486 452.28414 -317.68364 452.4944 -317.61007 452.6331 -317.5269 452.72753 -317.3956 452.76225 -317.23764 452.76366 -317.12821 452.78792 -316.94395 452.82946 -316.75655 452.8872 -316.57341 452.96066 -316.39607 453.04932 -316.22574 453.15246 -316.06385 453.26935 -315.9115 453.40493 -315.76354 455.94785 -313.22055 456.03455 -313.09078 456.065 -312.93771 456.065 -311.38246 456.09304 -311.13359 456.16829 -310.91854 456.28951 -310.72562 456.45062 -310.56451 456.64354 -310.44329 456.85859 -310.36804 457.10746 -310.34 459.42254 -310.34 Z M 337.402 -424.56961 L 337.98687 -424.60568 338.56288 -424.71336 339.12129 -424.891 339.65364 -425.13592 340.15185 -425.4444 340.60838 -425.81177 341.0163 -426.23245 341.36944 -426.70008 341.66243 -427.20756 341.89084 -427.74719 342.0512 -428.31081 342.14109 -428.88986 342.15913 -429.47557 342.10506 -430.05905 341.9797 -430.63147 341.78495 -431.18414 341.52375 -431.70869 341.20008 -432.19717 340.81882 -432.64217 340.38577 -433.03695 339.9075 -433.37551 339.39124 -433.65274 338.84482 -433.86442 338.64679 -433.94804 338.54087 -434.07058 338.49222 -434.22506 338.50882 -434.38618 338.58795 -434.5275 338.71663 -434.62586 340.15631 -435.31916 340.36838 -435.45241 340.54548 -435.62952 341.55527 -436.89579 341.68851 -437.10784 341.77122 -437.34421 342.13162 -438.92311 342.15967 -439.17199 342.13163 -439.42088 341.77122 -440.99988 341.68851 -441.23626 341.55527 -441.44831 340.54548 -442.71458 340.36838 -442.89169 340.15631 -443.02494 338.7115 -443.72071 338.58553 -443.81598 338.50626 -443.95259 338.48604 -444.10923 338.52804 -444.26149 338.6257 -444.38562 338.76379 -444.46227 339.12129 -444.576 339.65364 -444.82092 340.15185 -445.1294 340.60838 -445.49677 341.0163 -445.91745 341.36944 -446.38508 341.66243 -446.89256 341.89084 -447.43219 342.0512 -447.99581 342.14109 -448.57486 342.15913 -449.16057 342.10506 -449.74405 341.9797 -450.31647 341.78495 -450.86914 341.52375 -451.39369 341.20008 -451.88217 340.81882 -452.32717 340.38577 -452.72195 339.9075 -453.06051 339.39124 -453.33774 338.84482 -453.54942 338.27654 -453.69235 337.69499 -453.76436 337.10901 -453.76436 336.52746 -453.69235 335.95918 -453.54942 335.41276 -453.33774 334.8965 -453.06051 334.41823 -452.72195 333.98518 -452.32717 333.60392 -451.88217 333.28025 -451.39369 333.01905 -450.86914 332.8243 -450.31647 332.69894 -449.74405 332.64487 -449.16057 332.66291 -448.57486 332.7528 -447.99581 332.91316 -447.43219 333.14157 -446.89256 333.43456 -446.38508 333.7877 -445.91745 334.19562 -445.49677 334.65215 -445.1294 335.15036 -444.82092 335.68271 -444.576 336.04021 -444.46227 336.1783 -444.38562 336.27596 -444.26149 336.31796 -444.10924 336.29775 -443.95259 336.21848 -443.81599 336.09251 -443.72071 334.64776 -443.02493 334.43572 -442.89169 334.25865 -442.71462 333.24876 -441.44835 333.11549 -441.23625 333.03276 -440.99981 332.67246 -439.42081 332.64443 -439.17199 332.67246 -438.92317 333.03277 -437.34427 333.11549 -437.10784 333.24876 -436.89575 334.25865 -435.62948 334.43572 -435.45241 334.64776 -435.31917 336.08738 -434.62586 336.21606 -434.52749 336.29518 -434.38617 336.31178 -434.22506 336.26313 -434.07057 336.15721 -433.94804 335.95918 -433.86442 335.41276 -433.65274 334.8965 -433.37551 334.41823 -433.03695 333.98518 -432.64217 333.60392 -432.19717 333.28025 -431.70869 333.01905 -431.18414 332.8243 -430.63147 332.69894 -430.05905 332.64487 -429.47557 332.66291 -428.88986 332.7528 -428.31081 332.91316 -427.74719 333.14157 -427.20756 333.43456 -426.70008 333.7877 -426.23245 334.19562 -425.81177 334.65215 -425.4444 335.15036 -425.13592 335.68271 -424.891 336.24112 -424.71336 336.81713 -424.60568 337.402 -424.56961 Z M 393.505 -325.57773 L 393.89037 -325.61144 394.26404 -325.71157 394.61464 -325.87505 394.93152 -326.09694 395.20506 -326.37048 395.42695 -326.68736 395.59043 -327.03796 395.69056 -327.41163 395.72427 -327.797 395.68706 -328.19542 395.67908 -328.36595 395.74293 -328.52428 395.86699 -328.64156 396.02864 -328.69643 396.29141 -328.72604 396.46 -328.76125 396.62859 -328.72604 396.87746 -328.698 398.01254 -328.698 398.425 -328.7595 398.58859 -328.72604 398.83746 -328.698 399.97254 -328.698 400.22141 -328.72604 400.39 -328.76125 400.55859 -328.72604 400.80746 -328.698 401.94254 -328.698 402.19141 -328.72604 402.36 -328.76125 402.52859 -328.72604 402.79136 -328.69643 402.95301 -328.64156 403.07707 -328.52428 403.14092 -328.36595 403.09573 -327.797 403.12944 -327.41163 403.22957 -327.03796 403.39305 -326.68736 403.61494 -326.37048 403.88848 -326.09694 404.20536 -325.87505 404.55596 -325.71157 404.92963 -325.61144 405.315 -325.57773 405.70037 -325.61144 406.07404 -325.71157 406.42464 -325.87505 406.74152 -326.09694 407.01506 -326.37048 407.23695 -326.68736 407.40043 -327.03796 407.50056 -327.41163 407.53427 -327.797 407.48588 -328.33981 407.52728 -328.4796 407.61603 -328.59526 407.74034 -328.67143 407.88368 -328.698 409.03254 -328.698 409.28141 -328.72604 409.49646 -328.80129 409.68938 -328.92251 409.85049 -329.08362 409.97171 -329.27654 410.04696 -329.49159 410.075 -329.74046 410.075 -335.69554 410.04696 -335.94441 409.97171 -336.15946 409.85049 -336.35238 409.68938 -336.51349 409.49646 -336.63471 409.28141 -336.70996 409.03254 -336.738 406.71746 -336.738 406.46859 -336.70996 406.3 -336.67475 406.13141 -336.70996 405.88254 -336.738 404.74746 -336.738 404.49859 -336.70996 404.33 -336.67475 404.16141 -336.70996 403.91254 -336.738 402.77746 -336.738 402.52859 -336.70996 402.36 -336.67475 402.19141 -336.70996 401.94254 -336.738 400.80746 -336.738 400.55859 -336.70996 400.39 -336.67475 400.22141 -336.70996 399.97254 -336.738 398.83746 -336.738 398.425 -336.6765 398.26141 -336.70996 398.01254 -336.738 396.87746 -336.738 396.62859 -336.70996 396.46 -336.67475 396.29141 -336.70996 396.04254 -336.738 394.90746 -336.738 394.65859 -336.70996 394.49 -336.67475 394.32141 -336.70996 394.07254 -336.738 392.93746 -336.738 392.68859 -336.70996 392.52 -336.67475 392.35141 -336.70996 392.10254 -336.738 390.96746 -336.738 390.71859 -336.70996 390.55 -336.67475 390.38141 -336.70996 390.13254 -336.738 387.81746 -336.738 387.56859 -336.70996 387.35354 -336.63471 387.16062 -336.51349 386.99951 -336.35238 386.87829 -336.15946 386.80304 -335.94441 386.775 -335.69554 386.775 -329.74046 386.80304 -329.49159 386.87829 -329.27654 386.99951 -329.08362 387.16062 -328.92251 387.35354 -328.80129 387.56859 -328.72604 387.81746 -328.698 390.13254 -328.698 390.38141 -328.72604 390.55 -328.76125 390.71859 -328.72604 390.98136 -328.69643 391.14301 -328.64156 391.26707 -328.52428 391.33092 -328.36595 391.28573 -327.797 391.31944 -327.41163 391.41957 -327.03796 391.58305 -326.68736 391.80494 -326.37048 392.07848 -326.09694 392.39536 -325.87505 392.74596 -325.71157 393.11963 -325.61144 393.505 -325.57773 Z M 427.953 -307.87638 L 428.61814 -307.91373 429.27491 -308.02532 429.91506 -308.20975 430.53054 -308.46469 431.1136 -308.78693 431.65692 -309.17244 432.15365 -309.61635 432.59756 -310.11308 432.98307 -310.6564 433.30531 -311.23946 433.56025 -311.85494 433.74468 -312.49509 433.85627 -313.15186 433.89362 -313.817 433.85627 -314.48214 433.74468 -315.13891 433.56025 -315.77906 433.30531 -316.39454 432.98307 -316.9776 432.59756 -317.52092 432.15365 -318.01765 431.65692 -318.46156 431.1136 -318.84707 430.53054 -319.16931 429.91506 -319.42425 429.27491 -319.60868 428.61814 -319.72027 427.953 -319.75762 427.28786 -319.72027 426.63109 -319.60868 425.99094 -319.42425 425.37546 -319.16931 424.7924 -318.84707 424.24908 -318.46156 423.75235 -318.01765 423.30844 -317.52092 422.92293 -316.9776 422.60069 -316.39454 422.34575 -315.77906 422.16132 -315.13891 422.04973 -314.48214 422.01238 -313.817 422.04973 -313.15186 422.16132 -312.49509 422.34575 -311.85494 422.60069 -311.23946 422.92293 -310.6564 423.30844 -310.11308 423.75235 -309.61635 424.24908 -309.17244 424.7924 -308.78693 425.37546 -308.46469 425.99094 -308.20975 426.63109 -308.02532 427.28786 -307.91373 427.953 -307.87638 Z M 417.20186 -345.90855 L 417.53149 -345.878 422.14451 -345.878 422.47414 -345.90855 422.77469 -345.99406 423.0544 -346.13334 423.30376 -346.32165 423.51427 -346.55257 423.67877 -346.81824 423.79165 -347.10961 423.84906 -347.41676 423.84906 -347.72924 423.79165 -348.03639 423.67954 -348.32577 423.48108 -348.63883 423.42598 -348.77811 423.42598 -348.92789 423.48108 -349.06717 423.67954 -349.38023 423.79165 -349.66961 423.84906 -349.97676 423.84906 -350.28924 423.79165 -350.59639 423.67954 -350.88577 423.48108 -351.19883 423.42598 -351.33811 423.42598 -351.48789 423.48108 -351.62717 423.67954 -351.94023 423.79165 -352.22961 423.84906 -352.53676 423.84906 -352.84924 423.79165 -353.15639 423.67877 -353.44776 423.51427 -353.71343 423.30376 -353.94435 423.0544 -354.13266 422.77469 -354.27194 422.47414 -354.35745 422.14451 -354.388 417.53149 -354.388 417.20186 -354.35745 416.90131 -354.27194 416.6216 -354.13266 416.37224 -353.94435 416.16173 -353.71343 415.99723 -353.44776 415.88435 -353.15639 415.82694 -352.84924 415.82694 -352.53676 415.88435 -352.22961 415.99646 -351.94023 416.19492 -351.62717 416.25002 -351.48789 416.25002 -351.33811 416.19492 -351.19883 415.99646 -350.88577 415.88435 -350.59639 415.82694 -350.28924 415.82694 -349.97676 415.88435 -349.66961 415.99646 -349.38023 416.19492 -349.06717 416.25002 -348.92789 416.25002 -348.77811 416.19492 -348.63883 415.99646 -348.32577 415.88435 -348.03639 415.82694 -347.72924 415.82694 -347.41676 415.88435 -347.10961 415.99723 -346.81824 416.16173 -346.55257 416.37224 -346.32165 416.6216 -346.13334 416.90131 -345.99406 417.20186 -345.90855 Z M 363.8617 -376.12814 L 364.3983 -376.14608 364.92771 -376.23538 365.4405 -376.39445 365.92751 -376.62045 366.38005 -376.90934 366.79005 -377.25597 367.15019 -377.65416 367.45404 -378.0968 367.69619 -378.57598 367.8723 -379.08317 367.97924 -379.60931 368.0151 -380.145 367.97924 -380.68069 367.8723 -381.20683 367.69619 -381.71402 367.45404 -382.1932 367.15019 -382.63584 366.79005 -383.03403 366.38005 -383.38066 365.92751 -383.66955 365.4405 -383.89555 364.92771 -384.05462 364.3983 -384.14392 363.8617 -384.16186 363.3275 -384.10812 362.80524 -383.98366 362.30422 -383.79069 361.83339 -383.53267 361.40115 -383.2142 361.01522 -382.84095 360.68248 -382.4196 360.40887 -381.95766 360.19928 -381.46337 360.05743 -380.94555 359.98587 -380.41345 359.98587 -379.87655 360.05743 -379.34445 360.19928 -378.82663 360.40887 -378.33234 360.68248 -377.8704 361.01522 -377.44905 361.40115 -377.0758 361.83339 -376.75733 362.30422 -376.49931 362.80524 -376.30634 363.3275 -376.18188 363.8617 -376.12814 Z M 343.8617 -376.12814 L 344.3983 -376.14608 344.92771 -376.23538 345.4405 -376.39445 345.92751 -376.62045 346.38005 -376.90934 346.79005 -377.25597 347.15019 -377.65416 347.45404 -378.0968 347.69619 -378.57598 347.8723 -379.08317 347.97924 -379.60931 348.0151 -380.145 347.97924 -380.68069 347.8723 -381.20683 347.69619 -381.71402 347.45404 -382.1932 347.15019 -382.63584 346.79005 -383.03403 346.38005 -383.38066 345.92751 -383.66955 345.4405 -383.89555 344.92771 -384.05462 344.3983 -384.14392 343.8617 -384.16186 343.3275 -384.10812 342.80524 -383.98366 342.30422 -383.79069 341.83339 -383.53267 341.40115 -383.2142 341.01522 -382.84095 340.68248 -382.4196 340.40887 -381.95766 340.19928 -381.46337 340.05743 -380.94555 339.98587 -380.41345 339.98587 -379.87655 340.05743 -379.34445 340.19928 -378.82663 340.40887 -378.33234 340.68248 -377.8704 341.01522 -377.44905 341.40115 -377.0758 341.83339 -376.75733 342.30422 -376.49931 342.80524 -376.30634 343.3275 -376.18188 343.8617 -376.12814 Z M 373.8617 -376.12814 L 374.3983 -376.14608 374.92771 -376.23538 375.4405 -376.39445 375.92751 -376.62045 376.38005 -376.90934 376.79005 -377.25597 377.15019 -377.65416 377.45404 -378.0968 377.69619 -378.57598 377.8723 -379.08317 377.97924 -379.60931 378.0151 -380.145 377.97924 -380.68069 377.8723 -381.20683 377.69619 -381.71402 377.45404 -382.1932 377.15019 -382.63584 376.79005 -383.03403 376.38005 -383.38066 375.92751 -383.66955 375.4405 -383.89555 374.92771 -384.05462 374.3983 -384.14392 373.8617 -384.16186 373.3275 -384.10812 372.80524 -383.98366 372.30422 -383.79069 371.83339 -383.53267 371.40115 -383.2142 371.01522 -382.84095 370.68248 -382.4196 370.40887 -381.95766 370.19928 -381.46337 370.05743 -380.94555 369.98587 -380.41345 369.98587 -379.87655 370.05743 -379.34445 370.19928 -378.82663 370.40887 -378.33234 370.68248 -377.8704 371.01522 -377.44905 371.40115 -377.0758 371.83339 -376.75733 372.30422 -376.49931 372.80524 -376.30634 373.3275 -376.18188 373.8617 -376.12814 Z M 378.41509 -345.00944 L 378.66396 -344.9814 383.93404 -344.9814 384.18291 -345.00944 384.39796 -345.08469 384.59088 -345.20591 384.75199 -345.36702 384.87321 -345.55994 384.94846 -345.77499 384.9765 -346.02386 384.9765 -351.53014 384.94846 -351.77901 384.87321 -351.99406 384.75199 -352.18698 384.59088 -352.34809 384.39796 -352.46931 384.18291 -352.54456 383.93404 -352.5726 378.66396 -352.5726 378.41509 -352.54456 378.20004 -352.46931 378.00712 -352.34809 377.84601 -352.18698 377.72479 -351.99406 377.64954 -351.77901 377.6215 -351.53014 377.6215 -346.02386 377.64954 -345.77499 377.72479 -345.55994 377.84601 -345.36702 378.00712 -345.20591 378.20004 -345.08469 378.41509 -345.00944 Z M 368.11 -418.48773 L 368.49537 -418.52144 368.86904 -418.62157 369.21964 -418.78505 369.53652 -419.00694 369.81006 -419.28048 370.03195 -419.59736 370.19543 -419.94796 370.29556 -420.32163 370.32927 -420.707 370.29556 -421.09237 370.19543 -421.46604 370.03195 -421.81664 369.81006 -422.13352 369.53652 -422.40706 369.21964 -422.62895 368.86904 -422.79243 368.49537 -422.89256 368.11 -422.92627 367.72463 -422.89256 367.35096 -422.79243 367.00036 -422.62895 366.68348 -422.40706 366.40994 -422.13352 366.18805 -421.81664 366.02457 -421.46604 365.92444 -421.09237 365.89073 -420.707 365.92444 -420.32163 366.02457 -419.94796 366.18805 -419.59736 366.40994 -419.28048 366.68348 -419.00694 367.00036 -418.78505 367.35096 -418.62157 367.72463 -418.52144 368.11 -418.48773 Z "},{"net":"GND","svgpath":"M 336.15481 -315.9474 L 336.01217 -315.9211 335.62318 -315.9211 335.47011 -315.95155 335.34034 -316.03825 333.99562 -317.38291 333.93806 -317.45452 333.6463 -317.74082 333.59289 -317.78564 333.29356 -318.08497 333.20685 -318.21474 333.1764 -318.36781 333.1764 -327.84915 333.2059 -327.99992 333.29005 -328.12845 333.41644 -328.21578 333.56643 -328.24903 333.71788 -328.22329 333.84847 -328.14237 333.93892 -328.0182 334.10205 -327.66836 334.32394 -327.35148 334.59748 -327.07794 334.91436 -326.85605 335.26496 -326.69257 335.63863 -326.59244 336.024 -326.55873 336.34034 -326.5864 336.50378 -326.5667 336.64544 -326.48284 336.74132 -326.34902 336.7752 -326.18793 336.7752 -317.76522 336.80139 -317.52717 336.87117 -317.32525 336.90162 -317.17218 336.87117 -317.0191 336.78446 -316.88933 336.60951 -316.71438 336.48829 -316.52146 336.36754 -316.13751 336.2787 -316.02284 336.15481 -315.9474 Z "},{"net":"GND","svgpath":"M 451.77279 -324.46616 L 451.62524 -324.4031 451.46476 -324.4031 451.31721 -324.46616 451.20631 -324.58215 451.15989 -324.65603 450.99878 -324.81714 450.80586 -324.93836 450.59081 -325.01361 450.41414 -325.03352 450.25707 -325.08566 450.13456 -325.19692 450.06757 -325.34825 450.06757 -325.51375 450.13456 -325.66508 450.25707 -325.77634 450.41414 -325.82848 450.59081 -325.84839 450.80586 -325.92364 450.99878 -326.04486 451.15989 -326.20597 451.20631 -326.27985 451.31721 -326.39584 451.46476 -326.4589 451.62524 -326.4589 451.77279 -326.39584 451.90538 -326.24532 451.95106 -326.14324 451.96669 -326.03251 451.96669 -324.82949 451.95106 -324.71876 451.88369 -324.58215 451.77279 -324.46616 Z "},{"net":"GND","svgpath":"M 326.25238 -337.72101 L 326.14164 -337.73664 326.00536 -337.80381 325.88937 -337.91471 325.8263 -338.06226 325.8263 -338.22274 325.88937 -338.37029 326.00536 -338.48119 326.08003 -338.52811 326.24114 -338.68922 326.36236 -338.88214 326.43761 -339.09719 326.45752 -339.27386 326.50966 -339.43093 326.62092 -339.55344 326.77225 -339.62043 326.93775 -339.62043 327.08908 -339.55344 327.20034 -339.43093 327.25248 -339.27386 327.27239 -339.09719 327.34764 -338.88214 327.46886 -338.68922 327.62997 -338.52811 327.70464 -338.48119 327.82063 -338.37029 327.8837 -338.22274 327.8837 -338.06226 327.82063 -337.91471 327.67043 -337.78232 327.56836 -337.73664 327.45762 -337.72101 326.25238 -337.72101 Z "},{"net":"GND","svgpath":"M 446.93149 -355.18607 L 446.80009 -355.22263 446.68862 -355.30122 446.15993 -355.82989 446.0763 -355.95243 446.04308 -356.09703 446.06485 -356.24379 446.13861 -356.37251 446.25421 -356.4655 446.57626 -356.63804 446.74447 -356.64659 446.90128 -356.58514 447.0189 -356.4646 447.08386 -356.36122 447.24497 -356.20011 447.42866 -356.08469 447.54354 -355.97538 447.60692 -355.83002 447.60884 -355.67146 447.54899 -355.52461 447.43679 -355.41256 447.1924 -355.25062 447.06753 -355.19577 446.93149 -355.18607 Z "},{"net":"GND","svgpath":"M 436.54942 -382.74219 L 436.40583 -382.75025 424.53548 -382.75025 424.38781 -382.77851 424.261 -382.85929 424.17297 -382.98117 424.13616 -383.12695 424.15577 -383.27602 424.22324 -383.47971 424.2481 -383.70997 424.2481 -404.37037 424.27855 -404.52344 424.36526 -404.65321 424.51769 -404.80564 424.64746 -404.89235 424.80053 -404.9228 431.30132 -404.9228 431.45439 -404.89235 431.58416 -404.80564 431.73659 -404.65321 431.8233 -404.52344 431.85375 -404.37037 431.85375 -399.45797 431.87994 -399.21992 431.91076 -399.11294 431.97337 -398.9679 432.00611 -398.81332 431.97643 -398.65812 431.88897 -398.52652 431.56989 -398.20743 431.42007 -398.02059 431.32103 -397.81493 431.27024 -397.59238 431.2632 -397.46703 431.2632 -386.46587 431.28939 -386.22782 431.36478 -386.01236 431.48622 -385.81908 431.75087 -385.54449 431.93771 -385.39467 432.14337 -385.29563 432.36592 -385.24484 432.49127 -385.2378 436.7839 -385.2378 436.94523 -385.20382 437.07915 -385.10767 437.16291 -384.96567 437.18229 -384.80194 437.13399 -384.64431 437.02968 -384.42913 436.97889 -384.20658 436.97185 -384.08123 436.97185 -383.14156 436.93922 -382.98332 436.84665 -382.85089 436.70924 -382.76589 436.54942 -382.74219 Z "},{"net":"GND","svgpath":"M 414.52622 -408.41585 L 414.38644 -408.45726 414.27078 -408.54601 414.1946 -408.67031 414.16804 -408.81366 414.16804 -408.95807 414.10921 -409.27276 413.99356 -409.57128 413.81051 -409.86693 413.7574 -410.004 413.7574 -410.151 413.81051 -410.28807 413.99356 -410.58372 414.10921 -410.88224 414.16804 -411.19693 414.16804 -411.39313 414.1946 -411.53647 414.27078 -411.66078 414.38644 -411.74953 414.52622 -411.79093 414.67156 -411.7795 414.85463 -411.73044 415.24 -411.69673 415.44839 -411.67865 415.59292 -411.58894 415.6871 -411.44728 415.71205 -411.24653 415.71205 -408.83526 415.67817 -408.67416 415.58229 -408.54035 415.44063 -408.45649 415.27719 -408.43678 415.043 -408.45727 414.52622 -408.41585 Z "},{"net":"GND","svgpath":"M 417.90304 -413.95033 L 417.73749 -413.9517 417.58667 -414.01999 417.47642 -414.14351 417.42563 -414.30109 417.32543 -414.67504 417.16195 -415.02564 416.94006 -415.34252 416.66652 -415.61606 416.34964 -415.83795 415.99904 -416.00143 415.62537 -416.10156 415.48555 -416.11379 415.34089 -416.15481 415.2216 -416.24635 415.14453 -416.37546 415.12058 -416.5239 415.15312 -416.6707 415.23757 -416.79511 417.14986 -418.70741 417.19798 -418.7578 417.39624 -419.02034 417.53667 -419.30237 417.62289 -419.60539 417.65368 -419.93759 417.65368 -424.16363 417.68412 -424.31671 417.77083 -424.44648 418.49792 -425.17357 418.62769 -425.26028 418.80335 -425.29073 418.95642 -425.26028 419.08619 -425.17357 419.1729 -425.0438 419.20335 -424.89073 419.20335 -424.79306 419.23139 -424.54419 419.30664 -424.32914 419.42786 -424.13622 419.58897 -423.97511 419.66364 -423.92819 419.77963 -423.81729 419.8427 -423.66974 419.8427 -423.50926 419.77963 -423.36171 419.66364 -423.25081 419.58897 -423.20389 419.42786 -423.04278 419.30664 -422.84986 419.23139 -422.63481 419.20335 -422.38594 419.20335 -417.97206 419.23139 -417.72319 419.30664 -417.50814 419.42786 -417.31522 419.58897 -417.15411 419.78189 -417.03289 419.99694 -416.95764 420.24581 -416.9296 420.33836 -416.9296 420.49946 -416.89572 420.63327 -416.79984 420.71713 -416.65818 420.73684 -416.49474 420.71473 -416.242 420.74844 -415.85663 420.84857 -415.48296 421.01205 -415.13236 421.19179 -414.87568 421.25805 -414.71571 421.2505 -414.54272 421.17054 -414.38913 421.03317 -414.28373 420.86412 -414.24625 418.71177 -414.24625 418.47372 -414.22006 418.25826 -414.14467 418.05497 -414.01612 417.90304 -413.95033 Z "},{"net":"GND","svgpath":"M 425.00388 -414.24625 L 424.83483 -414.28373 424.69746 -414.38913 424.6175 -414.54272 424.60995 -414.71571 424.67621 -414.87568 424.85595 -415.13236 425.01943 -415.48296 425.11956 -415.85663 425.15327 -416.242 425.13116 -416.49474 425.15087 -416.65818 425.23473 -416.79984 425.36854 -416.89572 425.52964 -416.9296 425.62219 -416.9296 425.87106 -416.95764 426.08611 -417.03289 426.27903 -417.15411 426.44014 -417.31522 426.48881 -417.39268 426.60839 -417.51452 426.76788 -417.5754 426.93823 -417.56423 427.08841 -417.48305 427.19107 -417.34665 427.2275 -417.17987 427.2275 -416.85086 427.25554 -416.60199 427.33079 -416.38694 427.45201 -416.19402 427.61312 -416.03291 427.80604 -415.91169 428.02109 -415.83644 428.26996 -415.8084 432.26032 -415.8084 432.41339 -415.77795 432.54316 -415.69124 432.62987 -415.56147 432.66032 -415.4084 432.62987 -415.25533 432.54316 -415.12556 431.78101 -414.36341 431.65124 -414.2767 431.49817 -414.24625 425.00388 -414.24625 Z "}],"B":[{"net":"VCC","svgpath":"M 433.84539 -308.1388 L 433.69231 -308.10835 423.98434 -308.10835 423.83126 -308.1388 423.70149 -308.22551 419.01456 -312.91244 418.92785 -313.04221 418.8974 -313.19529 418.8974 -337.7933 418.86954 -337.86056 404.55521 -352.17489 404.48795 -352.20275 391.75531 -352.20275 391.60224 -352.2332 391.47247 -352.31991 389.48706 -354.30531 389.40035 -354.43508 389.3699 -354.58816 389.3699 -366.99766 389.40035 -367.15074 389.48706 -367.28051 392.40234 -370.19579 392.53211 -370.2825 392.68519 -370.31295 435.46396 -370.31295 435.61704 -370.2825 435.74681 -370.19579 442.20539 -363.73721 442.2921 -363.60744 442.32255 -363.45436 442.32255 -316.73859 442.2921 -316.58551 442.20539 -316.45574 433.97516 -308.22551 433.84539 -308.1388 Z M 436.46863 -353.06744 L 436.854 -353.03373 437.23937 -353.06744 437.61304 -353.16757 437.96364 -353.33105 438.28052 -353.55294 438.55406 -353.82648 438.77595 -354.14336 438.93943 -354.49396 439.03956 -354.86763 439.07327 -355.253 439.03956 -355.63837 438.93943 -356.01204 438.77595 -356.36264 438.55406 -356.67952 438.28052 -356.95306 437.96364 -357.17495 437.61304 -357.33843 437.23937 -357.43856 436.87605 -357.47034 436.74187 -357.5063 436.62807 -357.58598 436.54839 -357.69977 436.51244 -357.83396 436.48056 -358.19837 436.38043 -358.57204 436.21695 -358.92264 435.99506 -359.23952 435.72152 -359.51306 435.40464 -359.73495 435.05404 -359.89843 434.68037 -359.99856 434.295 -360.03227 433.90963 -359.99856 433.53596 -359.89843 433.18536 -359.73495 432.86848 -359.51306 432.59494 -359.23952 432.37305 -358.92264 432.20957 -358.57204 432.10944 -358.19837 432.07573 -357.813 432.10944 -357.42763 432.20957 -357.05396 432.37305 -356.70336 432.59494 -356.38648 432.86848 -356.11294 433.18536 -355.89105 433.53596 -355.72757 433.90963 -355.62744 434.27295 -355.59566 434.40713 -355.5597 434.52093 -355.48002 434.60061 -355.36623 434.63656 -355.23204 434.66844 -354.86763 434.76857 -354.49396 434.93205 -354.14336 435.15394 -353.82648 435.42748 -353.55294 435.74436 -353.33105 436.09496 -353.16757 436.46863 -353.06744 Z M 424.76 -353.03373 L 425.14537 -353.06744 425.51904 -353.16757 425.86964 -353.33105 426.18652 -353.55294 426.46006 -353.82648 426.68195 -354.14336 426.84543 -354.49396 426.94556 -354.86763 426.97927 -355.253 426.94556 -355.63837 426.84543 -356.01204 426.68195 -356.36264 426.46006 -356.67952 426.18652 -356.95306 425.86964 -357.17495 425.51904 -357.33843 425.14537 -357.43856 424.76 -357.47227 424.37463 -357.43856 424.00096 -357.33843 423.65036 -357.17495 423.33348 -356.95306 423.05994 -356.67952 422.83805 -356.36264 422.67457 -356.01204 422.57444 -355.63837 422.54073 -355.253 422.57444 -354.86763 422.67457 -354.49396 422.83805 -354.14336 423.05994 -353.82648 423.33348 -353.55294 423.65036 -353.33105 424.00096 -353.16757 424.37463 -353.06744 424.76 -353.03373 Z "},{"net":"GND","svgpath":"M 429.12099 -387.46935 L 428.96791 -387.4389 427.33079 -387.4389 427.17771 -387.46935 427.04794 -387.55606 426.69171 -387.91229 426.605 -388.04206 426.57455 -388.19514 426.57455 -401.24956 426.605 -401.40264 426.69171 -401.53241 427.04794 -401.88864 427.17771 -401.97535 427.33079 -402.0058 456.72376 -402.0058 456.87684 -401.97535 457.00661 -401.88864 457.36284 -401.53241 457.44955 -401.40264 457.48 -401.24956 457.48 -400.00614 457.44955 -399.85306 457.36284 -399.72329 457.00661 -399.36706 456.87684 -399.28035 456.72376 -399.2499 430.94465 -399.2499 430.87739 -399.22204 429.75201 -398.09666 429.72415 -398.0294 429.72415 -388.19514 429.6937 -388.04206 429.60699 -387.91229 429.25076 -387.55606 429.12099 -387.46935 Z "},{"net":"GND","svgpath":"M 314.88509 -303.9745 L 314.73201 -304.00495 314.60224 -304.09166 314.51553 -304.22143 314.48509 -304.3745 314.51553 -304.52757 314.60224 -304.65734 320.79252 -310.84762 320.81359 -310.9008 317.88907 -321.81532 317.85355 -321.86016 306.93903 -324.78468 306.88244 -324.77634 300.68284 -318.57674 300.55307 -318.49003 300.4 -318.45959 300.24693 -318.49003 300.11716 -318.57674 300.03045 -318.70651 300 -318.85959 300.00001 -326.21403 300.03036 -326.36687 302.27581 -331.79761 302.36261 -331.92761 305.87764 -335.44264 305.9055 -335.5099 305.9055 -351.1791 305.87764 -351.24636 302.36949 -354.75452 302.28288 -354.88406 300.03055 -360.31191 300 -360.46522 300.00001 -385.26903 300.03036 -385.42187 302.27581 -390.85261 302.36261 -390.98261 305.87764 -394.49764 305.9055 -394.5649 305.9055 -410.2341 305.87764 -410.30136 302.36949 -413.80952 302.28288 -413.93906 300.03055 -419.36691 300 -419.52022 300.00001 -444.32403 300.03036 -444.47687 302.27581 -449.90761 302.36261 -450.03761 305.87764 -453.55264 305.9055 -453.6199 305.9055 -469.2891 305.87764 -469.35636 302.36949 -472.86452 302.28288 -472.99406 300.03055 -478.42191 300 -478.57522 300 -478.771 300.03045 -478.92407 300.11716 -479.05384 300.24693 -479.14055 300.4 -479.171 496.44999 -479.171 496.60307 -479.14055 496.73284 -479.05384 496.81955 -478.92407 496.84999 -478.77099 496.84999 -478.58496 496.81964 -478.43213 494.57419 -473.00139 494.48739 -472.87139 490.97236 -469.35636 490.9445 -469.2891 490.9445 -453.6199 490.97236 -453.55264 494.48051 -450.04448 494.56712 -449.91494 496.81945 -444.48709 496.85 -444.33378 496.84999 -419.52997 496.81964 -419.37713 494.57419 -413.94639 494.48739 -413.81639 490.97236 -410.30136 490.9445 -410.2341 490.9445 -394.5649 490.97236 -394.49764 494.48051 -390.98948 494.56712 -390.85994 496.81945 -385.43209 496.85 -385.27878 496.84999 -360.47497 496.81964 -360.32213 494.57419 -354.89139 494.48739 -354.76139 490.97236 -351.24636 490.9445 -351.1791 490.9445 -335.5099 490.97236 -335.44264 494.48051 -331.93448 494.56712 -331.80494 496.81945 -326.37709 496.85 -326.22378 496.85 -318.85959 496.81955 -318.70651 496.73284 -318.57674 496.60307 -318.49003 496.45 -318.45959 496.29693 -318.49003 496.16716 -318.57674 489.97688 -324.76702 489.9237 -324.78809 479.00918 -321.86357 478.96434 -321.82805 476.03982 -310.91353 476.04816 -310.85694 482.24776 -304.65734 482.33447 -304.52757 482.36491 -304.3745 482.33447 -304.22143 482.24776 -304.09166 482.11799 -304.00495 481.96491 -303.9745 314.88509 -303.9745 Z M 423.70452 -307.09539 L 423.82987 -307.08835 433.84678 -307.08835 434.08483 -307.11454 434.30029 -307.18993 434.49357 -307.31137 434.58718 -307.39504 443.03586 -315.84372 443.18568 -316.03056 443.28472 -316.23622 443.33551 -316.45877 443.34255 -316.58412 443.34255 -363.60883 443.31636 -363.84688 443.24097 -364.06234 443.11953 -364.25562 443.03586 -364.34923 436.35883 -371.02626 436.17199 -371.17608 435.96633 -371.27512 435.74378 -371.32591 435.61843 -371.33295 392.53072 -371.33295 392.29267 -371.30676 392.07721 -371.23137 391.88393 -371.10993 391.79032 -371.02626 388.65659 -367.89253 388.50677 -367.70569 388.40773 -367.50003 388.35694 -367.27748 388.3499 -367.15213 388.3499 -354.43369 388.37609 -354.19564 388.45148 -353.98018 388.57292 -353.7869 388.65659 -353.69328 390.86045 -351.48944 391.04729 -351.33962 391.25296 -351.24058 391.4755 -351.18979 391.60085 -351.18275 403.93917 -351.18275 404.09224 -351.1523 404.22201 -351.06559 417.76024 -337.52736 417.84695 -337.39759 417.8774 -337.24452 417.8774 -313.04082 417.90359 -312.80277 417.97898 -312.58731 418.10042 -312.39403 418.18409 -312.30042 423.08947 -307.39504 423.27631 -307.24522 423.48197 -307.14618 423.70452 -307.09539 Z M 337.402 -424.56961 L 337.98687 -424.60568 338.56288 -424.71336 339.12129 -424.891 339.65364 -425.13592 340.15185 -425.4444 340.60838 -425.81177 341.0163 -426.23245 341.36944 -426.70008 341.66243 -427.20756 341.89084 -427.74719 342.0512 -428.31081 342.14109 -428.88986 342.15913 -429.47557 342.10506 -430.05905 341.9797 -430.63147 341.78495 -431.18414 341.52375 -431.70869 341.20008 -432.19717 340.81882 -432.64217 340.38577 -433.03695 339.9075 -433.37551 339.39124 -433.65274 338.84482 -433.86442 338.64679 -433.94804 338.54087 -434.07058 338.49222 -434.22506 338.50882 -434.38618 338.58795 -434.5275 338.71663 -434.62586 340.15631 -435.31916 340.36838 -435.45241 340.54548 -435.62952 341.55527 -436.89579 341.68851 -437.10784 341.77122 -437.34421 342.13162 -438.92311 342.15967 -439.17199 342.13163 -439.42088 341.77122 -440.99988 341.68851 -441.23626 341.55527 -441.44831 340.54548 -442.71458 340.36838 -442.89169 340.15631 -443.02494 338.7115 -443.72071 338.58553 -443.81598 338.50626 -443.95259 338.48604 -444.10923 338.52804 -444.26149 338.6257 -444.38562 338.76379 -444.46227 339.12129 -444.576 339.65364 -444.82092 340.15185 -445.1294 340.60838 -445.49677 341.0163 -445.91745 341.36944 -446.38508 341.66243 -446.89256 341.89084 -447.43219 342.0512 -447.99581 342.14109 -448.57486 342.15913 -449.16057 342.10506 -449.74405 341.9797 -450.31647 341.78495 -450.86914 341.52375 -451.39369 341.20008 -451.88217 340.81882 -452.32717 340.38577 -452.72195 339.9075 -453.06051 339.39124 -453.33774 338.84482 -453.54942 338.27654 -453.69235 337.69499 -453.76436 337.10901 -453.76436 336.52746 -453.69235 335.95918 -453.54942 335.41276 -453.33774 334.8965 -453.06051 334.41823 -452.72195 333.98518 -452.32717 333.60392 -451.88217 333.28025 -451.39369 333.01905 -450.86914 332.8243 -450.31647 332.69894 -449.74405 332.64487 -449.16057 332.66291 -448.57486 332.7528 -447.99581 332.91316 -447.43219 333.14157 -446.89256 333.43456 -446.38508 333.7877 -445.91745 334.19562 -445.49677 334.65215 -445.1294 335.15036 -444.82092 335.68271 -444.576 336.04021 -444.46227 336.1783 -444.38562 336.27596 -444.26149 336.31796 -444.10924 336.29775 -443.95259 336.21848 -443.81599 336.09251 -443.72071 334.64776 -443.02493 334.43572 -442.89169 334.25865 -442.71462 333.24876 -441.44835 333.11549 -441.23625 333.03276 -440.99981 332.67246 -439.42081 332.64443 -439.17199 332.67246 -438.92317 333.03277 -437.34427 333.11549 -437.10784 333.24876 -436.89575 334.25865 -435.62948 334.43572 -435.45241 334.64776 -435.31917 336.08738 -434.62586 336.21606 -434.52749 336.29518 -434.38617 336.31178 -434.22506 336.26313 -434.07057 336.15721 -433.94804 335.95918 -433.86442 335.41276 -433.65274 334.8965 -433.37551 334.41823 -433.03695 333.98518 -432.64217 333.60392 -432.19717 333.28025 -431.70869 333.01905 -431.18414 332.8243 -430.63147 332.69894 -430.05905 332.64487 -429.47557 332.66291 -428.88986 332.7528 -428.31081 332.91316 -427.74719 333.14157 -427.20756 333.43456 -426.70008 333.7877 -426.23245 334.19562 -425.81177 334.65215 -425.4444 335.15036 -425.13592 335.68271 -424.891 336.24112 -424.71336 336.81713 -424.60568 337.402 -424.56961 Z M 368.897 -307.87638 L 369.56214 -307.91373 370.21891 -308.02532 370.85906 -308.20975 371.47454 -308.46469 372.0576 -308.78693 372.60092 -309.17244 373.09765 -309.61635 373.54156 -310.11308 373.92707 -310.6564 374.24931 -311.23946 374.50425 -311.85494 374.68868 -312.49509 374.80027 -313.15186 374.83762 -313.817 374.80027 -314.48214 374.68868 -315.13891 374.50425 -315.77906 374.24931 -316.39454 373.92707 -316.9776 373.54156 -317.52092 373.09765 -318.01765 372.60092 -318.46156 372.0576 -318.84707 371.47454 -319.16931 370.85906 -319.42425 370.21891 -319.60868 369.56214 -319.72027 368.897 -319.75762 368.23186 -319.72027 367.57509 -319.60868 366.93494 -319.42425 366.31946 -319.16931 365.7364 -318.84707 365.19308 -318.46156 364.69635 -318.01765 364.25244 -317.52092 363.86693 -316.9776 363.54469 -316.39454 363.28975 -315.77906 363.10532 -315.13891 362.99373 -314.48214 362.95638 -313.817 362.99373 -313.15186 363.10532 -312.49509 363.28975 -311.85494 363.54469 -311.23946 363.86693 -310.6564 364.25244 -310.11308 364.69635 -309.61635 365.19308 -309.17244 365.7364 -308.78693 366.31946 -308.46469 366.93494 -308.20975 367.57509 -308.02532 368.23186 -307.91373 368.897 -307.87638 Z M 339.90857 -409.64987 L 340.49205 -409.70394 341.06447 -409.8293 341.61714 -410.02405 342.14169 -410.28525 342.63017 -410.60892 343.07517 -410.99018 343.46995 -411.42323 343.80851 -411.9015 344.08574 -412.41776 344.29742 -412.96418 344.44035 -413.53246 344.51236 -414.11401 344.51236 -414.69999 344.44035 -415.28154 344.29742 -415.84982 344.08574 -416.39624 343.80851 -416.9125 343.46995 -417.39077 343.07517 -417.82382 342.63017 -418.20508 342.14169 -418.52875 341.61714 -418.78995 341.06447 -418.9847 340.49205 -419.11006 339.90857 -419.16413 339.32286 -419.14609 338.74381 -419.0562 338.18019 -418.89584 337.64056 -418.66743 337.13308 -418.37444 336.66545 -418.0213 336.24477 -417.61338 335.8774 -417.15685 335.56892 -416.65864 335.324 -416.12629 335.14636 -415.56788 335.03868 -414.99187 335.00261 -414.407 335.03868 -413.82213 335.14636 -413.24612 335.324 -412.68771 335.56892 -412.15536 335.8774 -411.65715 336.24477 -411.20062 336.66545 -410.7927 337.13308 -410.43956 337.64056 -410.14657 338.18019 -409.91816 338.74381 -409.7578 339.32286 -409.66791 339.90857 -409.64987 Z M 466.36114 -436.9055 L 466.61 -436.93354 466.84639 -437.01625 468.30561 -437.71896 468.51768 -437.85221 468.69478 -438.02932 469.70457 -439.29559 469.83781 -439.50764 469.92052 -439.74402 470.28093 -441.32302 470.30897 -441.5719 470.28093 -441.82078 469.92052 -443.39978 469.83781 -443.63616 469.70457 -443.84821 468.69478 -445.11448 468.51768 -445.29159 468.30561 -445.42484 466.84639 -446.12755 466.61 -446.21026 466.36114 -446.2383 464.74156 -446.2383 464.4927 -446.21026 464.25631 -446.12755 462.79709 -445.42484 462.58502 -445.29159 462.40792 -445.11448 461.39813 -443.84821 461.26489 -443.63616 461.18218 -443.39978 460.82177 -441.82078 460.79373 -441.5719 460.82177 -441.32302 461.18218 -439.74402 461.26489 -439.50764 461.39813 -439.29559 462.40792 -438.02932 462.58502 -437.85221 462.79709 -437.71896 464.25631 -437.01625 464.4927 -436.93354 464.74156 -436.9055 466.36114 -436.9055 Z M 404.413 -391.22373 L 404.79837 -391.25744 405.17204 -391.35757 405.52264 -391.52105 405.83952 -391.74294 406.11306 -392.01648 406.33495 -392.33336 406.49843 -392.68396 406.59856 -393.05763 406.63227 -393.443 406.59856 -393.82837 406.49843 -394.20204 406.33495 -394.55264 406.11306 -394.86952 405.83952 -395.14306 405.52264 -395.36495 405.17204 -395.52843 404.84662 -395.61563 404.69303 -395.69558 404.58762 -395.83295 404.55014 -396.002 404.58762 -396.17105 404.69303 -396.30842 404.84662 -396.38837 405.17204 -396.47557 405.52264 -396.63905 405.83952 -396.86094 406.11306 -397.13448 406.33495 -397.45136 406.49843 -397.80196 406.59856 -398.17563 406.63227 -398.561 406.59856 -398.94637 406.49843 -399.32004 406.33495 -399.67064 406.11306 -399.98752 405.83952 -400.26106 405.52264 -400.48295 405.17204 -400.64643 404.84662 -400.73363 404.69303 -400.81358 404.58762 -400.95095 404.55014 -401.12 404.58762 -401.28905 404.69303 -401.42642 404.84662 -401.50637 405.17204 -401.59357 405.52264 -401.75705 405.83952 -401.97894 406.11306 -402.25248 406.33495 -402.56936 406.49843 -402.91996 406.59856 -403.29363 406.63227 -403.679 406.59856 -404.06437 406.49843 -404.43804 406.33495 -404.78864 406.11306 -405.10552 405.83952 -405.37906 405.52264 -405.60095 405.17204 -405.76443 404.84475 -405.85213 404.69116 -405.93208 404.58575 -406.06945 404.54828 -406.2385 404.58575 -406.40755 404.69116 -406.54492 404.84475 -406.62487 405.17204 -406.71257 405.52264 -406.87605 405.83952 -407.09794 406.11306 -407.37148 406.33495 -407.68836 406.49843 -408.03896 406.59856 -408.41263 406.63227 -408.798 406.59856 -409.18337 406.49843 -409.55704 406.33495 -409.90764 406.11306 -410.22452 405.83952 -410.49806 405.52264 -410.71995 405.17204 -410.88343 404.79837 -410.98356 404.413 -411.01727 404.02763 -410.98356 403.65396 -410.88343 403.30336 -410.71995 402.98648 -410.49806 402.71294 -410.22452 402.49105 -409.90764 402.32757 -409.55704 402.22744 -409.18337 402.19373 -408.798 402.22744 -408.41263 402.32757 -408.03896 402.49105 -407.68836 402.71294 -407.37148 402.98648 -407.09794 403.30336 -406.87605 403.65396 -406.71257 403.98125 -406.62487 404.13484 -406.54492 404.24025 -406.40755 404.27772 -406.2385 404.24025 -406.06945 404.13484 -405.93208 403.98125 -405.85213 403.65396 -405.76443 403.30336 -405.60095 402.98648 -405.37906 402.71294 -405.10552 402.49105 -404.78864 402.32757 -404.43804 402.22744 -404.06437 402.19373 -403.679 402.22744 -403.29363 402.32757 -402.91996 402.49105 -402.56936 402.71294 -402.25248 402.98648 -401.97894 403.30336 -401.75705 403.65396 -401.59357 403.97938 -401.50637 404.13297 -401.42642 404.23838 -401.28905 404.27586 -401.12 404.23838 -400.95095 404.13297 -400.81358 403.97938 -400.73363 403.65396 -400.64643 403.30336 -400.48295 402.98648 -400.26106 402.71294 -399.98752 402.49105 -399.67064 402.32757 -399.32004 402.22744 -398.94637 402.19373 -398.561 402.22744 -398.17563 402.32757 -397.80196 402.49105 -397.45136 402.71294 -397.13448 402.98648 -396.86094 403.30336 -396.63905 403.65396 -396.47557 403.97938 -396.38837 404.13297 -396.30842 404.23838 -396.17105 404.27586 -396.002 404.23838 -395.83295 404.13297 -395.69558 403.97938 -395.61563 403.65396 -395.52843 403.30336 -395.36495 402.98648 -395.14306 402.71294 -394.86952 402.49105 -394.55264 402.32757 -394.20204 402.22744 -393.82837 402.19373 -393.443 402.22744 -393.05763 402.32757 -392.68396 402.49105 -392.33336 402.71294 -392.01648 402.98648 -391.74294 403.30336 -391.52105 403.65396 -391.35757 404.02763 -391.25744 404.413 -391.22373 Z M 415.043 -393.78273 L 415.42837 -393.81644 415.80204 -393.91657 416.15264 -394.08005 416.46952 -394.30194 416.74306 -394.57548 416.96495 -394.89236 417.12843 -395.24296 417.22856 -395.61663 417.26227 -396.002 417.22856 -396.38737 417.12843 -396.76104 416.96495 -397.11164 416.74306 -397.42852 416.46952 -397.70206 416.15264 -397.92395 415.80204 -398.08743 415.47662 -398.17463 415.32303 -398.25458 415.21762 -398.39195 415.18014 -398.561 415.21762 -398.73005 415.32303 -398.86742 415.47662 -398.94737 415.80204 -399.03457 416.15264 -399.19805 416.46952 -399.41994 416.74306 -399.69348 416.96495 -400.01036 417.12843 -400.36096 417.22856 -400.73463 417.26227 -401.12 417.22856 -401.50537 417.12843 -401.87904 416.96495 -402.22964 416.74306 -402.54652 416.46952 -402.82006 416.15264 -403.04195 415.80204 -403.20543 415.47662 -403.29263 415.32303 -403.37258 415.21762 -403.50995 415.18014 -403.679 415.21762 -403.84805 415.32303 -403.98542 415.47662 -404.06537 415.80204 -404.15257 416.15264 -404.31605 416.46952 -404.53794 416.74306 -404.81148 416.96495 -405.12836 417.12843 -405.47896 417.22856 -405.85263 417.26227 -406.238 417.22856 -406.62337 417.12843 -406.99704 416.96495 -407.34764 416.74306 -407.66452 416.46952 -407.93806 416.15264 -408.15995 415.80204 -408.32343 415.42837 -408.42356 415.043 -408.45727 414.65763 -408.42356 414.28396 -408.32343 413.93336 -408.15995 413.61648 -407.93806 413.34294 -407.66452 413.12105 -407.34764 412.95757 -406.99704 412.85744 -406.62337 412.82373 -406.238 412.85744 -405.85263 412.95757 -405.47896 413.12105 -405.12836 413.34294 -404.81148 413.61648 -404.53794 413.93336 -404.31605 414.28396 -404.15257 414.60938 -404.06537 414.76297 -403.98542 414.86838 -403.84805 414.90586 -403.679 414.86838 -403.50995 414.76297 -403.37258 414.60938 -403.29263 414.28396 -403.20543 413.93336 -403.04195 413.61648 -402.82006 413.34294 -402.54652 413.12105 -402.22964 412.95757 -401.87904 412.85744 -401.50537 412.82373 -401.12 412.85744 -400.73463 412.95757 -400.36096 413.12105 -400.01036 413.34294 -399.69348 413.61648 -399.41994 413.93336 -399.19805 414.28396 -399.03457 414.60938 -398.94737 414.76297 -398.86742 414.86838 -398.73005 414.90586 -398.561 414.86838 -398.39195 414.76297 -398.25458 414.60938 -398.17463 414.28396 -398.08743 413.93336 -397.92395 413.61648 -397.70206 413.34294 -397.42852 413.12105 -397.11164 412.95757 -396.76104 412.85744 -396.38737 412.82373 -396.002 412.85744 -395.61663 412.95757 -395.24296 413.12105 -394.89236 413.34294 -394.57548 413.61648 -394.30194 413.93336 -394.08005 414.28396 -393.91657 414.65763 -393.81644 415.043 -393.78273 Z M 330.975 -339.33373 L 331.36037 -339.36744 331.73404 -339.46757 332.08464 -339.63105 332.40152 -339.85294 332.67506 -340.12648 332.89695 -340.44336 333.06043 -340.79396 333.16056 -341.16763 333.19427 -341.553 333.16056 -341.93837 333.06043 -342.31204 332.89695 -342.66264 332.67506 -342.97952 332.40152 -343.25306 332.08464 -343.47495 331.73404 -343.63843 331.36037 -343.73856 330.975 -343.77227 330.58963 -343.73856 330.21596 -343.63843 329.86536 -343.47495 329.54848 -343.25306 329.27494 -342.97952 329.05305 -342.66264 328.88957 -342.31204 328.78944 -341.93837 328.75573 -341.553 328.78944 -341.16763 328.88957 -340.79396 329.05305 -340.44336 329.27494 -340.12648 329.54848 -339.85294 329.86536 -339.63105 330.21596 -339.46757 330.58963 -339.36744 330.975 -339.33373 Z M 373.996 -377.92573 L 374.38137 -377.95944 374.75504 -378.05957 375.10564 -378.22305 375.42252 -378.44494 375.69606 -378.71848 375.91795 -379.03536 376.08143 -379.38596 376.18156 -379.75963 376.21527 -380.145 376.18156 -380.53037 376.08143 -380.90404 375.91795 -381.25464 375.69606 -381.57152 375.42252 -381.84506 375.10564 -382.06695 374.75504 -382.23043 374.38137 -382.33056 373.996 -382.36427 373.61063 -382.33056 373.23696 -382.23043 372.88636 -382.06695 372.56948 -381.84506 372.29594 -381.57152 372.07405 -381.25464 371.91057 -380.90404 371.81044 -380.53037 371.77673 -380.145 371.81044 -379.75963 371.91057 -379.38596 372.07405 -379.03536 372.29594 -378.71848 372.56948 -378.44494 372.88636 -378.22305 373.23696 -378.05957 373.61063 -377.95944 373.996 -377.92573 Z M 343.996 -377.92573 L 344.38137 -377.95944 344.75504 -378.05957 345.10564 -378.22305 345.42252 -378.44494 345.69606 -378.71848 345.91795 -379.03536 346.08143 -379.38596 346.18156 -379.75963 346.21527 -380.145 346.18156 -380.53037 346.08143 -380.90404 345.91795 -381.25464 345.69606 -381.57152 345.42252 -381.84506 345.10564 -382.06695 344.75504 -382.23043 344.38137 -382.33056 343.996 -382.36427 343.61063 -382.33056 343.23696 -382.23043 342.88636 -382.06695 342.56948 -381.84506 342.29594 -381.57152 342.07405 -381.25464 341.91057 -380.90404 341.81044 -380.53037 341.77673 -380.145 341.81044 -379.75963 341.91057 -379.38596 342.07405 -379.03536 342.29594 -378.71848 342.56948 -378.44494 342.88636 -378.22305 343.23696 -378.05957 343.61063 -377.95944 343.996 -377.92573 Z M 329.921 -386.92773 L 330.30637 -386.96144 330.68004 -387.06157 331.03064 -387.22505 331.34752 -387.44694 331.62106 -387.72048 331.84295 -388.03736 332.00643 -388.38796 332.10656 -388.76163 332.14027 -389.147 332.10656 -389.53237 332.00643 -389.90604 331.84295 -390.25664 331.62106 -390.57352 331.34752 -390.84706 331.03064 -391.06895 330.68004 -391.23243 330.30637 -391.33256 329.921 -391.36627 329.53563 -391.33256 329.16196 -391.23243 328.81136 -391.06895 328.49448 -390.84706 328.22094 -390.57352 327.99905 -390.25664 327.83557 -389.90604 327.73544 -389.53237 327.70173 -389.147 327.73544 -388.76163 327.83557 -388.38796 327.99905 -388.03736 328.22094 -387.72048 328.49448 -387.44694 328.81136 -387.22505 329.16196 -387.06157 329.53563 -386.96144 329.921 -386.92773 Z M 454.955 -332.84373 L 455.34037 -332.87744 455.71404 -332.97757 456.06464 -333.14105 456.38152 -333.36294 456.65506 -333.63648 456.87695 -333.95336 457.04043 -334.30396 457.14056 -334.67763 457.17427 -335.063 457.14056 -335.44837 457.04043 -335.82204 456.87695 -336.17264 456.65506 -336.48952 456.38152 -336.76306 456.06464 -336.98495 455.71404 -337.14843 455.34037 -337.24856 454.955 -337.28227 454.56963 -337.24856 454.19596 -337.14843 453.84536 -336.98495 453.52848 -336.76306 453.25494 -336.48952 453.03305 -336.17264 452.86957 -335.82204 452.76944 -335.44837 452.73573 -335.063 452.76944 -334.67763 452.86957 -334.30396 453.03305 -333.95336 453.25494 -333.63648 453.52848 -333.36294 453.84536 -333.14105 454.19596 -332.97757 454.56963 -332.87744 454.955 -332.84373 Z M 448.135 -332.64673 L 448.52037 -332.68044 448.89404 -332.78057 449.24464 -332.94405 449.56152 -333.16594 449.83506 -333.43948 450.05695 -333.75636 450.22043 -334.10696 450.32056 -334.48063 450.35427 -334.866 450.32056 -335.25137 450.22043 -335.62504 450.05695 -335.97564 449.83506 -336.29252 449.56152 -336.56606 449.24464 -336.78795 448.89404 -336.95143 448.52037 -337.05156 448.135 -337.08527 447.74963 -337.05156 447.37596 -336.95143 447.02536 -336.78795 446.70848 -336.56606 446.43494 -336.29252 446.21305 -335.97564 446.04957 -335.62504 445.94944 -335.25137 445.91573 -334.866 445.94944 -334.48063 446.04957 -334.10696 446.21305 -333.75636 446.43494 -333.43948 446.70848 -333.16594 447.02536 -332.94405 447.37596 -332.78057 447.74963 -332.68044 448.135 -332.64673 Z M 419.942 -395.75073 L 420.32737 -395.78444 420.70104 -395.88457 421.05164 -396.04805 421.36852 -396.26994 421.64206 -396.54348 421.86395 -396.86036 422.02743 -397.21096 422.12756 -397.58463 422.16127 -397.97 422.12756 -398.35537 422.02743 -398.72904 421.86395 -399.07964 421.64206 -399.39652 421.36852 -399.67006 421.05164 -399.89195 420.70104 -400.05543 420.32737 -400.15556 419.942 -400.18927 419.55663 -400.15556 419.18296 -400.05543 418.83236 -399.89195 418.51548 -399.67006 418.24194 -399.39652 418.02005 -399.07964 417.85657 -398.72904 417.75644 -398.35537 417.72273 -397.97 417.75644 -397.58463 417.85657 -397.21096 418.02005 -396.86036 418.24194 -396.54348 418.51548 -396.26994 418.83236 -396.04805 419.18296 -395.88457 419.55663 -395.78444 419.942 -395.75073 Z M 473.23663 -400.60744 L 473.622 -400.57373 474.00737 -400.60744 474.38104 -400.70757 474.73164 -400.87105 475.04852 -401.09294 475.32206 -401.36648 475.54395 -401.68336 475.70743 -402.03396 475.80756 -402.40763 475.84127 -402.793 475.80756 -403.17837 475.70743 -403.55204 475.54395 -403.90264 475.32206 -404.21952 475.04852 -404.49306 474.73164 -404.71495 474.38104 -404.87843 474.00737 -404.97856 473.622 -405.01227 473.23663 -404.97856 472.86296 -404.87843 472.51236 -404.71495 472.19548 -404.49306 471.92194 -404.21952 471.70005 -403.90264 471.53657 -403.55204 471.43644 -403.17837 471.40273 -402.793 471.43644 -402.40763 471.53657 -402.03396 471.70005 -401.68336 471.92194 -401.36648 472.19548 -401.09294 472.51236 -400.87105 472.86296 -400.70757 473.23663 -400.60744 Z M 394.685 -401.55773 L 395.07037 -401.59144 395.44404 -401.69157 395.79464 -401.85505 396.11152 -402.07694 396.38506 -402.35048 396.60695 -402.66736 396.77043 -403.01796 396.87056 -403.39163 396.90427 -403.777 396.87056 -404.16237 396.77043 -404.53604 396.60695 -404.88664 396.38506 -405.20352 396.11152 -405.47706 395.79464 -405.69895 395.44404 -405.86243 395.07037 -405.96256 394.685 -405.99627 394.29963 -405.96256 393.92596 -405.86243 393.57536 -405.69895 393.25848 -405.47706 392.98494 -405.20352 392.76305 -404.88664 392.59957 -404.53604 392.49944 -404.16237 392.46573 -403.777 392.49944 -403.39163 392.59957 -403.01796 392.76305 -402.66736 392.98494 -402.35048 393.25848 -402.07694 393.57536 -401.85505 393.92596 -401.69157 394.29963 -401.59144 394.685 -401.55773 Z M 368.11 -402.73973 L 368.49537 -402.77344 368.86904 -402.87357 369.21964 -403.03705 369.53652 -403.25894 369.81006 -403.53248 370.03195 -403.84936 370.19543 -404.19996 370.29556 -404.57363 370.32927 -404.959 370.29556 -405.34437 370.19543 -405.71804 370.03195 -406.06864 369.81006 -406.38552 369.53652 -406.65906 369.21964 -406.88095 368.86904 -407.04443 368.49537 -407.14456 368.11 -407.17827 367.72463 -407.14456 367.35096 -407.04443 367.00036 -406.88095 366.68348 -406.65906 366.40994 -406.38552 366.18805 -406.06864 366.02457 -405.71804 365.92444 -405.34437 365.89073 -404.959 365.92444 -404.57363 366.02457 -404.19996 366.18805 -403.84936 366.40994 -403.53248 366.68348 -403.25894 367.00036 -403.03705 367.35096 -402.87357 367.72463 -402.77344 368.11 -402.73973 Z M 336.024 -326.55873 L 336.40937 -326.59244 336.78304 -326.69257 337.13364 -326.85605 337.45052 -327.07794 337.72406 -327.35148 337.94595 -327.66836 338.10943 -328.01896 338.20956 -328.39263 338.24327 -328.778 338.20956 -329.16337 338.10943 -329.53704 337.94595 -329.88764 337.72406 -330.20452 337.45052 -330.47806 337.13364 -330.69995 336.78304 -330.86343 336.40937 -330.96356 336.024 -330.99727 335.63863 -330.96356 335.26496 -330.86343 334.91436 -330.69995 334.59748 -330.47806 334.32394 -330.20452 334.10205 -329.88764 333.93857 -329.53704 333.83844 -329.16337 333.80473 -328.778 333.83844 -328.39263 333.93857 -328.01896 334.10205 -327.66836 334.32394 -327.35148 334.59748 -327.07794 334.91436 -326.85605 335.26496 -326.69257 335.63863 -326.59244 336.024 -326.55873 Z M 415.24 -411.69673 L 415.62537 -411.73044 415.99904 -411.83057 416.34964 -411.99405 416.66652 -412.21594 416.94006 -412.48948 417.16195 -412.80636 417.32543 -413.15696 417.42556 -413.53063 417.45927 -413.916 417.42556 -414.30137 417.32543 -414.67504 417.16195 -415.02564 416.94006 -415.34252 416.66652 -415.61606 416.34964 -415.83795 415.99904 -416.00143 415.62537 -416.10156 415.24 -416.13527 414.85463 -416.10156 414.48096 -416.00143 414.13036 -415.83795 413.81348 -415.61606 413.53994 -415.34252 413.31805 -415.02564 413.15457 -414.67504 413.05444 -414.30137 413.02073 -413.916 413.05444 -413.53063 413.15457 -413.15696 413.31805 -412.80636 413.53994 -412.48948 413.81348 -412.21594 414.13036 -411.99405 414.48096 -411.83057 414.85463 -411.73044 415.24 -411.69673 Z M 422.934 -414.02273 L 423.31937 -414.05644 423.69304 -414.15657 424.04364 -414.32005 424.36052 -414.54194 424.63406 -414.81548 424.85595 -415.13236 425.01943 -415.48296 425.11956 -415.85663 425.15327 -416.242 425.11956 -416.62737 425.01943 -417.00104 424.85595 -417.35164 424.63406 -417.66852 424.36052 -417.94206 424.04364 -418.16395 423.69304 -418.32743 423.31937 -418.42756 422.934 -418.46127 422.54863 -418.42756 422.17496 -418.32743 421.82436 -418.16395 421.50748 -417.94206 421.23394 -417.66852 421.01205 -417.35164 420.84857 -417.00104 420.74844 -416.62737 420.71473 -416.242 420.74844 -415.85663 420.84857 -415.48296 421.01205 -415.13236 421.23394 -414.81548 421.50748 -414.54194 421.82436 -414.32005 422.17496 -414.15657 422.54863 -414.05644 422.934 -414.02273 Z M 431.70063 -418.52144 L 432.086 -418.48773 432.47137 -418.52144 432.84504 -418.62157 433.19564 -418.78505 433.51252 -419.00694 433.78606 -419.28048 434.00795 -419.59736 434.17143 -419.94796 434.27156 -420.32163 434.30527 -420.707 434.27156 -421.09237 434.17143 -421.46604 434.00795 -421.81664 433.78606 -422.13352 433.51252 -422.40706 433.19564 -422.62895 432.84504 -422.79243 432.47137 -422.89256 432.086 -422.92627 431.70063 -422.89256 431.32696 -422.79243 430.97636 -422.62895 430.65948 -422.40706 430.38594 -422.13352 430.16405 -421.81664 430.00057 -421.46604 429.90044 -421.09237 429.86673 -420.707 429.90044 -420.32163 430.00057 -419.94796 430.16405 -419.59736 430.38594 -419.28048 430.65948 -419.00694 430.97636 -418.78505 431.32696 -418.62157 431.70063 -418.52144 Z M 367.72463 -418.52144 L 368.11 -418.48773 368.49537 -418.52144 368.86904 -418.62157 369.21964 -418.78505 369.53652 -419.00694 369.81006 -419.28048 370.03195 -419.59736 370.19543 -419.94796 370.29556 -420.32163 370.32927 -420.707 370.29556 -421.09237 370.19543 -421.46604 370.03195 -421.81664 369.81006 -422.13352 369.53652 -422.40706 369.21964 -422.62895 368.86904 -422.79243 368.49537 -422.89256 368.11 -422.92627 367.72463 -422.89256 367.35096 -422.79243 367.00036 -422.62895 366.68348 -422.40706 366.40994 -422.13352 366.18805 -421.81664 366.02457 -421.46604 365.92444 -421.09237 365.89073 -420.707 365.92444 -420.32163 366.02457 -419.94796 366.18805 -419.59736 366.40994 -419.28048 366.68348 -419.00694 367.00036 -418.78505 367.35096 -418.62157 367.72463 -418.52144 Z M 332.238 -313.80873 L 332.62337 -313.84244 332.99704 -313.94257 333.34764 -314.10605 333.66452 -314.32794 333.93806 -314.60148 334.15995 -314.91836 334.32343 -315.26896 334.42356 -315.64263 334.45727 -316.028 334.42356 -316.41337 334.32343 -316.78704 334.15995 -317.13764 333.93806 -317.45452 333.66452 -317.72806 333.34764 -317.94995 332.99704 -318.11343 332.62337 -318.21356 332.238 -318.24727 331.85263 -318.21356 331.47896 -318.11343 331.12836 -317.94995 330.81148 -317.72806 330.53794 -317.45452 330.31605 -317.13764 330.15257 -316.78704 330.05244 -316.41337 330.01873 -316.028 330.05244 -315.64263 330.15257 -315.26896 330.31605 -314.91836 330.53794 -314.60148 330.81148 -314.32794 331.12836 -314.10605 331.47896 -313.94257 331.85263 -313.84244 332.238 -313.80873 Z M 393.505 -325.57773 L 393.89037 -325.61144 394.26404 -325.71157 394.61464 -325.87505 394.93152 -326.09694 395.20506 -326.37048 395.42695 -326.68736 395.59043 -327.03796 395.69056 -327.41163 395.72427 -327.797 395.69056 -328.18237 395.59043 -328.55604 395.42695 -328.90664 395.20506 -329.22352 394.93152 -329.49706 394.61464 -329.71895 394.26404 -329.88243 393.89037 -329.98256 393.505 -330.01627 393.11963 -329.98256 392.74596 -329.88243 392.39536 -329.71895 392.07848 -329.49706 391.80494 -329.22352 391.58305 -328.90664 391.41957 -328.55604 391.31944 -328.18237 391.28573 -327.797 391.31944 -327.41163 391.41957 -327.03796 391.58305 -326.68736 391.80494 -326.37048 392.07848 -326.09694 392.39536 -325.87505 392.74596 -325.71157 393.11963 -325.61144 393.505 -325.57773 Z M 404.92963 -325.61144 L 405.315 -325.57773 405.70037 -325.61144 406.07404 -325.71157 406.42464 -325.87505 406.74152 -326.09694 407.01506 -326.37048 407.23695 -326.68736 407.40043 -327.03796 407.50056 -327.41163 407.53427 -327.797 407.50056 -328.18237 407.40043 -328.55604 407.23695 -328.90664 407.01506 -329.22352 406.74152 -329.49706 406.42464 -329.71895 406.07404 -329.88243 405.70037 -329.98256 405.315 -330.01627 404.92963 -329.98256 404.55596 -329.88243 404.20536 -329.71895 403.88848 -329.49706 403.61494 -329.22352 403.39305 -328.90664 403.22957 -328.55604 403.12944 -328.18237 403.09573 -327.797 403.12944 -327.41163 403.22957 -327.03796 403.39305 -326.68736 403.61494 -326.37048 403.88848 -326.09694 404.20536 -325.87505 404.55596 -325.71157 404.92963 -325.61144 Z M 363.996 -377.92573 L 364.38137 -377.95944 364.75504 -378.05957 365.10564 -378.22305 365.42252 -378.44494 365.69606 -378.71848 365.91795 -379.03536 366.08143 -379.38596 366.18156 -379.75963 366.21527 -380.145 366.18156 -380.53037 366.08143 -380.90404 365.91795 -381.25464 365.69606 -381.57152 365.42252 -381.84506 365.10564 -382.06695 364.75504 -382.23043 364.38137 -382.33056 363.996 -382.36427 363.61063 -382.33056 363.23696 -382.23043 362.88636 -382.06695 362.56948 -381.84506 362.29594 -381.57152 362.07405 -381.25464 361.91057 -380.90404 361.81044 -380.53037 361.77673 -380.145 361.81044 -379.75963 361.91057 -379.38596 362.07405 -379.03536 362.29594 -378.71848 362.56948 -378.44494 362.88636 -378.22305 363.23696 -378.05957 363.61063 -377.95944 363.996 -377.92573 Z "}]},"pads":[{"layers":["F"],"pos":[363.996,-380.145],"size":[6,6],"angle":0,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":363.996,"y":-380.145},"polygon":[],"net":"TXD"},{"layers":["F"],"pos":[373.996,-380.145],"size":[6,6],"angle":0,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":373.996,"y":-380.145},"polygon":[],"net":"RXD"},{"layers":["F"],"pos":[353.996,-380.145],"size":[6,6],"angle":0,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":353.996,"y":-380.145},"polygon":[],"net":"GND"},{"layers":["F"],"pos":[343.996,-380.145],"size":[6,6],"angle":0,"shape":"oval","type":"smd","drillsize":[0,0],"holeCenterPoint":{"x":343.996,"y":-380.145},"polygon":[],"net":"+5V"}],"nets":["+3.3V","+5V","GND","SDA","SCL","SW1","TXD","RXD","CC1","CC2","TEMP1","SW0","HEAT","+1.5V","TEMP0","VOLP","$1N46470","$1N45830","$1N45829","VCC","$1N49187","$1N27574","VDD","$1N27581","$1N40384","$1N27582","$1N40383","$1N44398"],"bom":{"both":[[2,"5.1K","R0805",[["R7",0],["R8",1]],[" "," "," "," "]],[3,"100K","R0805",[["R9",2],["R24",10],["R13",29]],[" "," "," "," "]],[1,"25V10UF","C0805",[["C6",3]],[" "," "," "," "]],[1,"USB1","USB-C-SMD_918-418K2023S40024",[["USB-C-SMD_918-418K2023S40024",4]],[" "," "," "," "]],[1,"IP2721","TSSOP-16_L5.0-W4.4-P0.65-LS6.4-BL",[["U20",5]],[" "," "," "," "]],[1,"MP2451DT-LF-Z","SOT-23-6_L2.9-W1.6-P0.95-LS2.8-BR",[["U23",6]],[" "," "," "," "]],[1,"124K","R0805",[["R12",7]],[" "," "," "," "]],[6,"0.1UF","C0805",[["C7",8],["C4",31],["C9",32],["C1",33],["C11",34],["C5",42]],[" "," "," "," "]],[1,"1uf","C0805",[["C8",9]],[" "," "," "," "]],[1,"23.7k","R0805",[["R28",11]],[" "," "," "," "]],[1,"NR252012-2R2M","IND-SMD_L2.5-W2.0-1",[["L2",12]],[" "," "," "," "]],[1,"AMS1117-3.3","SOT-89-3_L4.5-W2.5-P1.50-LS4.2-BR",[["U25",13]],[" "," "," "," "]],[1,"TS-1010-C-A","KEY-SMD_TX-1010-X-X",[["KEY-SMD_TX-1010-X-X",14]],[" "," "," "," "]],[1,"KEY-SMD_TX-1010-X-X","KEY-SMD_TX-1010-X-X",[["KEY-SMD_TX-1010-X-X",15]],[" "," "," "," "]],[1,"STC8H3K32S2-TSSOP20","TSSOP-20_L6.5-W4.4-P0.65-LS6.5-BL",[["U29",16]],[" "," "," "," "]],[1,"90K","R0805",[["R6",17]],[" "," "," "," "]],[5,"10K","R0805",[["R10",18],["R1",23],["R3",24],["R4",25],["R11",27]],[" "," "," "," "]],[4,"WSD3028DN","DFN-8_L3.3-W3.3-P0.65-BL-2",[["Q14",19],["Q1",20],["Q2",22],["Q3",35]],[" "," "," "," "]],[1,"AMS1117A-1.5v","SOT-223_L6.3-W3.5-P2.30-LS7.0-BR",[["U30",21]],[" "," "," "," "]],[2,"0.1uf","C0805",[["C2",26],["C3",28]],[" "," "," "," "]],[2,"1K","R0805",[["R14",30],["R16",43]],[" "," "," "," "]],[1,"SS24","SMA_L4.2-W2.7-LS5.1-RD",[["D6",36]],[" "," "," "," "]],[2,"CONN-TH_X8821WR-02S-46SN","CONN-TH_X8821WR-02S-46SN",[["CONN-TH_X8821WR-02S-46SN",37],["CONN-TH_X8821WR-02S-46SN",41]],[" "," "," "," "]],[1,"CONN-TH_X8821WR-04S-46SN","CONN-TH_X8821WR-04S-46SN",[["CONN-TH_X8821WR-04S-46SN",38]],[" "," "," "," "]],[2,"大焊盘","大焊盘",[["大焊盘",39],["大焊盘",40]],[" "," "," "," "]]],"F":[[2,"5.1K","R0805",[["R7",0],["R8",1]],[" "," "," "," "]],[3,"100K","R0805",[["R9",2],["R24",10],["R13",29]],[" "," "," "," "]],[1,"25V10UF","C0805",[["C6",3]],[" "," "," "," "]],[1,"USB1","USB-C-SMD_918-418K2023S40024",[["USB-C-SMD_918-418K2023S40024",4]],[" "," "," "," "]],[1,"IP2721","TSSOP-16_L5.0-W4.4-P0.65-LS6.4-BL",[["U20",5]],[" "," "," "," "]],[1,"MP2451DT-LF-Z","SOT-23-6_L2.9-W1.6-P0.95-LS2.8-BR",[["U23",6]],[" "," "," "," "]],[1,"124K","R0805",[["R12",7]],[" "," "," "," "]],[6,"0.1UF","C0805",[["C7",8],["C4",31],["C9",32],["C1",33],["C11",34],["C5",42]],[" "," "," "," "]],[1,"1uf","C0805",[["C8",9]],[" "," "," "," "]],[1,"23.7k","R0805",[["R28",11]],[" "," "," "," "]],[1,"NR252012-2R2M","IND-SMD_L2.5-W2.0-1",[["L2",12]],[" "," "," "," "]],[1,"AMS1117-3.3","SOT-89-3_L4.5-W2.5-P1.50-LS4.2-BR",[["U25",13]],[" "," "," "," "]],[1,"TS-1010-C-A","KEY-SMD_TX-1010-X-X",[["KEY-SMD_TX-1010-X-X",14]],[" "," "," "," "]],[1,"KEY-SMD_TX-1010-X-X","KEY-SMD_TX-1010-X-X",[["KEY-SMD_TX-1010-X-X",15]],[" "," "," "," "]],[1,"STC8H3K32S2-TSSOP20","TSSOP-20_L6.5-W4.4-P0.65-LS6.5-BL",[["U29",16]],[" "," "," "," "]],[1,"90K","R0805",[["R6",17]],[" "," "," "," "]],[5,"10K","R0805",[["R10",18],["R1",23],["R3",24],["R4",25],["R11",27]],[" "," "," "," "]],[4,"WSD3028DN","DFN-8_L3.3-W3.3-P0.65-BL-2",[["Q14",19],["Q1",20],["Q2",22],["Q3",35]],[" "," "," "," "]],[1,"AMS1117A-1.5v","SOT-223_L6.3-W3.5-P2.30-LS7.0-BR",[["U30",21]],[" "," "," "," "]],[2,"0.1uf","C0805",[["C2",26],["C3",28]],[" "," "," "," "]],[2,"1K","R0805",[["R14",30],["R16",43]],[" "," "," "," "]],[1,"SS24","SMA_L4.2-W2.7-LS5.1-RD",[["D6",36]],[" "," "," "," "]],[2,"CONN-TH_X8821WR-02S-46SN","CONN-TH_X8821WR-02S-46SN",[["CONN-TH_X8821WR-02S-46SN",37],["CONN-TH_X8821WR-02S-46SN",41]],[" "," "," "," "]],[1,"CONN-TH_X8821WR-04S-46SN","CONN-TH_X8821WR-04S-46SN",[["CONN-TH_X8821WR-04S-46SN",38]],[" "," "," "," "]],[2,"大焊盘","大焊盘",[["大焊盘",39],["大焊盘",40]],[" "," "," "," "]]],"B":[],"skipped":[],"customColumns":[]}};
///////////////////////////////////////////////

///////////////////////////////////////////////
/* Utility functions */

var storagePrefix = 'ibom__' + pcbdata.metadata.title + '__' +
  pcbdata.metadata.revision + '__#';

function buildKeyForLocalStorageDict() {  
  return storagePrefix;
}

var storage;
var _isLocalStorageUsed = false;

function initStorage(key) {
  try {
    window.localStorage.getItem("blank");
    storage = window.localStorage;    
    _isLocalStorageUsed = true;
  } catch (e) {
    // localStorage not available
  }
  if (!storage) {
    try {
      window.sessionStorage.getItem("blank");
      storage = window.sessionStorage;      
    } catch (e) {
      // sessionStorage also not available
    }
  }
}



function readStorage(key) {
  if(!storage) {
    return null;
  }

  if(!_isLocalStorageUsed) {    
    return storage.getItem(storagePrefix + key);
  }

  try {
    var dictKey = buildKeyForLocalStorageDict();
    var obj = JSON.parse(storage.getItem(dictKey));    
    if(!obj || !obj.hasOwnProperty(key)) {
      return null;
    }

    return JSON.parse(storage.getItem(dictKey))[key];
  } catch(e) {
    console.log('[ibom]: Unable to obtain a value from local storage!');
    console.log(e);
  }
  
  // Original implementation
  // return storage.getItem(storagePrefix + key);
}


function writeStorage(key, value) {
  if(!storage) {
    return;
  }

  if(!_isLocalStorageUsed) {
    storage.setItem(storagePrefix + key, value);
    return;
  }

  try {
    var dictKey = buildKeyForLocalStorageDict();
    if(!storage.getItem(dictKey)) {
      storage.setItem(dictKey,JSON.stringify({
        _storagePrefix: storagePrefix
      }));
    }

    var obj = JSON.parse(storage.getItem(dictKey));
    obj[key] = value;
    storage.setItem(dictKey,JSON.stringify(obj));            
  } catch(e) {
    console.log('[ibom]: Unable to write key to local storage!');
    console.log(e);
  }
  
  // Original implementation
  // storage.setItem(storagePrefix + key, value);
}

function fancyDblClickHandler(el, onsingle, ondouble) {
  return function() {
    if (el.getAttribute("data-dblclick") == null) {
      el.setAttribute("data-dblclick", 1);
      setTimeout(function() {
        if (el.getAttribute("data-dblclick") == 1) {
          onsingle();
        }
        el.removeAttribute("data-dblclick");
      }, 200);
    } else {
      el.removeAttribute("data-dblclick");
      ondouble();
    }
  }
}

function smoothScrollToRow(rowid) {
  document.getElementById(rowid).scrollIntoView({
    behavior: "smooth",
    block: "center",
    inline: "nearest"
  });
}

function focusInputField(input) {
  input.scrollIntoView(false);
  input.focus();
  input.select();
}

function copyToClipboard() {
  var text = '';
  for (var node of bomhead.childNodes[0].childNodes) {
    if (node.firstChild) {
      text = text + node.firstChild.nodeValue;
    }
    if (node != bomhead.childNodes[0].lastChild) {
      text += '\t';
    }
  }
  text += '\n';
  for (var row of bombody.childNodes) {
    for (var cell of row.childNodes) {
      for (var node of cell.childNodes) {
        if (node.nodeName == "INPUT") {
          if (node.checked) {
            text = text + '✓';
          }
        } else if (node.nodeName == "MARK") {
          text = text + node.firstChild.nodeValue;
        } else {
          text = text + node.nodeValue;
        }
      }
      if (cell != row.lastChild) {
        text += '\t';
      }
    }
    text += '\n';
  }
  var textArea = document.createElement("textarea");
  textArea.classList.add('clipboard-temp');
  textArea.value = text;

  document.body.appendChild(textArea);
  textArea.focus();
  textArea.select();

  try {
    if (document.execCommand('copy')) {
      console.log('Bom copied to clipboard.');
    }
  } catch (err) {
    console.log('Can not copy to clipboard.');
  }

  document.body.removeChild(textArea);
}

function removeGutterNode(node) {
  for (var i = 0; i < node.childNodes.length; i++) {
    if (node.childNodes[i].classList &&
      node.childNodes[i].classList.contains("gutter")) {
      node.removeChild(node.childNodes[i]);
      break;
    }
  }
}

function cleanGutters() {
  removeGutterNode(document.getElementById("bot"));
  removeGutterNode(document.getElementById("canvasdiv"));
}

var units = {
  prefixes: {
    giga: ["G", "g", "giga", "Giga", "GIGA"],
    mega: ["M", "mega", "Mega", "MEGA"],
    kilo: ["K", "k", "kilo", "Kilo", "KILO"],
    milli: ["m", "milli", "Milli", "MILLI"],
    micro: ["U", "u", "micro", "Micro", "MICRO", "μ", "µ"], // different utf8 μ
    nano: ["N", "n", "nano", "Nano", "NANO"],
    pico: ["P", "p", "pico", "Pico", "PICO"],
  },
  unitsShort: ["R", "r", "Ω", "F", "f", "H", "h"],
  unitsLong: [
    "OHM", "Ohm", "ohm", "ohms",
    "FARAD", "Farad", "farad",
    "HENRY", "Henry", "henry"
  ],
  getMultiplier: function(s) {
    if (this.prefixes.giga.includes(s)) return 1e9;
    if (this.prefixes.mega.includes(s)) return 1e6;
    if (this.prefixes.kilo.includes(s)) return 1e3;
    if (this.prefixes.milli.includes(s)) return 1e-3;
    if (this.prefixes.micro.includes(s)) return 1e-6;
    if (this.prefixes.nano.includes(s)) return 1e-9;
    if (this.prefixes.pico.includes(s)) return 1e-12;
    return 1;
  },
  valueRegex: null,
}

function initUtils() {
  var allPrefixes = units.prefixes.giga
                    .concat(units.prefixes.mega)
                    .concat(units.prefixes.kilo)
                    .concat(units.prefixes.milli)
                    .concat(units.prefixes.micro)
                    .concat(units.prefixes.nano)
                    .concat(units.prefixes.pico);
  var allUnits = units.unitsShort.concat(units.unitsLong);
  units.valueRegex = new RegExp("^([0-9\.]+)" +
                         "\\s*(" + allPrefixes.join("|") + ")?" +
                         "(" + allUnits.join("|") + ")?" +
                         "(\\b.*)?$", "");
  units.valueAltRegex = new RegExp("^([0-9]*)" +
                         "(" + units.unitsShort.join("|") + ")?" +
                         "([GgMmKkUuNnPp])?" +
                         "([0-9]*)" +
                         "(\\b.*)?$", "");
  for (var bom_type of ["both", "F", "B"]) {
    for (var row of pcbdata.bom[bom_type]) {
      row.push(parseValue(row[1], row[3][0][0]));
    }
  }
}

function parseValue(val, ref) {
  var inferUnit = (unit, ref) => {
    if (unit) {
      unit = unit.toLowerCase();
      if (unit == 'Ω' || unit == "ohm" || unit == "ohms") {
        unit = 'r';
      }
      unit = unit[0];
    } else {
      ref = /^([a-z]+)\d+$/i.exec(ref);
      if (ref) {
        ref = ref[1].toLowerCase();
        if (ref == "c") unit = 'f';
        else if (ref == "l") unit = 'h';
        else if (ref == "r" || ref == "rv") unit = 'r';
        else unit = null;
      }
    }
    return unit;
  };
  val = val.replace(/,/g, "");
  var match = units.valueRegex.exec(val);
  var unit;
  if (match) {
    val = parseFloat(match[1]);
    if (match[2]) {
      val = val * units.getMultiplier(match[2]);
    }
    unit = inferUnit(match[3], ref);
    if (!unit) return null;
    else return {
      val: val,
      unit: unit,
      extra: match[4],
    }
  }
  match = units.valueAltRegex.exec(val);
  if (match && (match[1] || match[4])) {
    val = parseFloat(match[1] + "." + match[4]);
    if (match[3]) {
      val = val * units.getMultiplier(match[3]);
    }
    unit = inferUnit(match[2], ref);
    if (!unit) return null;
    else return {
      val: val,
      unit: unit,
      extra: match[5],
    }
  }
  return null;
}

function valueCompare(a, b, stra, strb) {
  if (a === null && b === null) {
    // Failed to parse both values, compare them as strings.
    if (stra != strb) return stra > strb ? 1 : -1;
    else return 0;
  } else if (a === null) {
    return 1;
  } else if (b === null) {
    return -1;
  } else {
    if (a.unit != b.unit) return a.unit > b.unit ? 1 : -1;
    else if (a.val != b.val) return a.val > b.val ? 1 : -1;
    else if (a.extra != b.extra) return a.extra > b.extra ? 1 : -1;
    else return 0;
  }
}

function validateSaveImgDimension(element) {
  var valid = false;
  var intValue = 0;
  if (/^[1-9]\d*$/.test(element.value)) {
    intValue = parseInt(element.value);
    if (intValue <= 16000) {
      valid = true;
    }
  }
  if (valid) {
    element.classList.remove("invalid");
  } else {
    element.classList.add("invalid");
  }
  return intValue;
}

function saveImage(layer) {
  var width = validateSaveImgDimension(document.getElementById("render-save-width"));
  var height = validateSaveImgDimension(document.getElementById("render-save-height"));
  var bgcolor = null;
  if (!document.getElementById("render-save-transparent").checked) {
    var style = getComputedStyle(topmostdiv);
    bgcolor = style.getPropertyValue("background-color");
  }
  if (!width || !height) return;

  // Prepare image
  var canvas = document.createElement("canvas");
  var layerdict = {
    transform: {
      x: 0,
      y: 0,
      s: 1,
      panx: 0,
      pany: 0,
      zoom: 1,
    },
    bg: canvas,
    fab: canvas,
    silk: canvas,
    highlight: canvas,
    layer: layer,
  }
  // Do the rendering
  recalcLayerScale(layerdict, width, height);
  prepareLayer(layerdict);
  clearCanvas(canvas, bgcolor);
  drawBackground(layerdict, false);
  drawHighlightsOnLayer(layerdict, false);

  // Save image
  var imgdata = canvas.toDataURL("image/png");

  var filename = pcbdata.metadata.title;
  if (pcbdata.metadata.revision) {
    filename += `.${pcbdata.metadata.revision}`;
  }
  filename += `.${layer}.png`;
  saveFile(filename, dataURLtoBlob(imgdata));
}

function saveSettings() {
  var data = {
    type: "InteractiveHtmlBom settings",
    version: 1,
    pcbmetadata: pcbdata.metadata,
    settings: settings,
  }
  var blob = new Blob([JSON.stringify(data, null, 4)], {type: "application/json"});
  saveFile(`${pcbdata.metadata.title}.settings.json`, blob);
}

function loadSettings() {
  var input = document.createElement("input");
  input.type = "file";
  input.accept = ".settings.json";
  input.onchange = function(e) {
    var file = e.target.files[0];
    var reader = new FileReader();
    reader.onload = readerEvent => {
      var content = readerEvent.target.result;
      var newSettings;
      try {
        newSettings = JSON.parse(content);
      } catch(e) {
        alert("Selected file is not InteractiveHtmlBom settings file.");
        return;
      }
      if (newSettings.type != "InteractiveHtmlBom settings") {
        alert("Selected file is not InteractiveHtmlBom settings file.");
        return;
      }
      var metadataMatches = newSettings.hasOwnProperty("pcbmetadata");
      if (metadataMatches) {
        for (var k in pcbdata.metadata) {
          if (!newSettings.pcbmetadata.hasOwnProperty(k) || newSettings.pcbmetadata[k] != pcbdata.metadata[k]) {
            metadataMatches = false;
          }
        }
      }
      if (!metadataMatches) {
        var currentMetadata = JSON.stringify(pcbdata.metadata, null, 4);
        var fileMetadata = JSON.stringify(newSettings.pcbmetadata, null, 4);
        if (!confirm(
          `Settins file metadata does not match current metadata.\n\n` +
          `Page metadata:\n${currentMetadata}\n\n` +
          `Settings file metadata:\n${fileMetadata}\n\n` +
          `Press OK if you would like to import settings anyway.`)) {
          return;
        }
      }
      overwriteSettings(newSettings.settings);
    }
    reader.readAsText(file, 'UTF-8');
  }
  input.click();
}

function overwriteSettings(newSettings) {

  initDone = false;
  Object.assign(settings, newSettings);
  writeStorage("bomlayout", settings.bomlayout);
  writeStorage("bommode", settings.bommode);
  writeStorage("canvaslayout", settings.canvaslayout);
  writeStorage("bomCheckboxes", settings.checkboxes.join(","));
  document.getElementById("bomCheckboxes").value = settings.checkboxes.join(",");
  for (var checkbox of settings.checkboxes) {
    writeStorage("checkbox_" + checkbox, settings.checkboxStoredRefs[checkbox]);
  }
  writeStorage("darkenWhenChecked", settings.darkenWhenChecked);
  padsVisible(settings.renderPads);
  document.getElementById("padsCheckbox").checked = settings.renderPads;
  fabricationVisible(settings.renderFabrication);
  document.getElementById("fabricationCheckbox").checked = settings.renderFabrication;
  silkscreenVisible(settings.renderSilkscreen);
  document.getElementById("silkscreenCheckbox").checked = settings.renderSilkscreen;
  referencesVisible(settings.renderReferences);
  document.getElementById("referencesCheckbox").checked = settings.renderReferences;
  valuesVisible(settings.renderValues);
  document.getElementById("valuesCheckbox").checked = settings.renderValues;
  tracksVisible(settings.renderTracks);
  document.getElementById("tracksCheckbox").checked = settings.renderTracks;
  zonesVisible(settings.renderZones);
  document.getElementById("zonesCheckbox").checked = settings.renderZones;
  dnpOutline(settings.renderDnpOutline);
  document.getElementById("dnpOutlineCheckbox").checked = settings.renderDnpOutline;
  setRedrawOnDrag(settings.redrawOnDrag);
  document.getElementById("dragCheckbox").checked = settings.redrawOnDrag;
  setShowCrosshair(settings.showCrosshair);
  document.getElementById("crosshairCheckbox").checked = settings.showCrosshair;
  setDarkMode(settings.darkMode);
  document.getElementById("darkmodeCheckbox").checked = settings.darkMode;
  setHighlightPin1(settings.highlightpin1);
  document.getElementById("highlightpin1Checkbox").checked = settings.highlightpin1;
  writeStorage("boardRotation", settings.boardRotation);
  document.getElementById("boardRotation").value = settings.boardRotation / 5;
  document.getElementById("rotationDegree").textContent = settings.boardRotation;
  initDone = true;
  prepCheckboxes();
  changeBomLayout(settings.bomlayout);
}

function saveFile(filename, blob) {
  var link = document.createElement("a");
  var objurl = URL.createObjectURL(blob);
  link.download = filename;
  link.href = objurl;
  link.click();
}

function dataURLtoBlob(dataurl) {
  var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1],
      bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
  while(n--){
      u8arr[n] = bstr.charCodeAt(n);
  }
  return new Blob([u8arr], {type:mime});
}

var settings = {
  canvaslayout: "default",
  bomlayout: "default",
  bommode: "grouped",
  checkboxes: [],
  checkboxStoredRefs: {},
  darkMode: false,
  highlightpin1: false,
  redrawOnDrag: true,
  boardRotation: 0,
  renderPads: true,
  renderReferences: true,
  renderValues: true,
  renderSilkscreen: true,
  renderFabrication: true,
  renderDnpOutline: false,
  renderTracks: true,
  renderZones: true,
}

function initDefaults() {
  settings.bomlayout = readStorage("bomlayout");
  if (settings.bomlayout === null) {
    settings.bomlayout = config.bom_view;
  }
  if (!['bom-only', 'left-right', 'top-bottom'].includes(settings.bomlayout)) {
    settings.bomlayout = config.bom_view;
  }
  settings.bommode = readStorage("bommode");
  if (settings.bommode === null) {
    settings.bommode = "grouped";
  }
  if (!["grouped", "ungrouped", "netlist"].includes(settings.bommode)) {
    settings.bommode = "grouped";
  }
  settings.canvaslayout = readStorage("canvaslayout");
  if (settings.canvaslayout === null) {
    settings.canvaslayout = config.layer_view;
  }
  var bomCheckboxes = readStorage("bomCheckboxes");
  if (bomCheckboxes === null) {
    bomCheckboxes = config.checkboxes;
  }
  settings.checkboxes = bomCheckboxes.split(",").filter((e) => e);
  document.getElementById("bomCheckboxes").value = bomCheckboxes;

  settings.darkenWhenChecked = readStorage("darkenWhenChecked") || "";
  populateDarkenWhenCheckedOptions();

  function initBooleanSetting(storageString, def, elementId, func) {    
    var b = readStorage(storageString);
    if (b === null) {
      b = def;
    } else {
      b = (b === true);
    }
    document.getElementById(elementId).checked = b;
    func(b);
  }

  initBooleanSetting("padsVisible", config.show_pads, "padsCheckbox", padsVisible);
  initBooleanSetting("fabricationVisible", config.show_fabrication, "fabricationCheckbox", fabricationVisible);
  initBooleanSetting("silkscreenVisible", config.show_silkscreen, "silkscreenCheckbox", silkscreenVisible);
  initBooleanSetting("referencesVisible", true, "referencesCheckbox", referencesVisible);
  initBooleanSetting("valuesVisible", false, "valuesCheckbox", valuesVisible);
  if ("tracks" in pcbdata) {
    initBooleanSetting("tracksVisible", true, "tracksCheckbox", tracksVisible);
    initBooleanSetting("zonesVisible", true, "zonesCheckbox", zonesVisible);
  } else {
    document.getElementById("tracksAndZonesCheckboxes").style.display = "none";
    tracksVisible(false);
    zonesVisible(false);
  }
  initBooleanSetting("dnpOutline", false, "dnpOutlineCheckbox", dnpOutline);
  initBooleanSetting("redrawOnDrag", config.redraw_on_drag, "dragCheckbox", setRedrawOnDrag);
  initBooleanSetting("showCrosshair", config.show_crosshair, "crosshairCheckbox", setShowCrosshair);
  initBooleanSetting("darkmode", config.dark_mode, "darkmodeCheckbox", setDarkMode);
  initBooleanSetting("highlightpin1", config.highlight_pin1, "highlightpin1Checkbox", setHighlightPin1);
  settings.boardRotation = readStorage("boardRotation");
  if (settings.boardRotation === null) {
    settings.boardRotation = config.board_rotation * 5;
  } else {
    settings.boardRotation = parseInt(settings.boardRotation);
  }
  document.getElementById("boardRotation").value = settings.boardRotation / 5;
  document.getElementById("rotationDegree").textContent = settings.boardRotation;
}

// Helper classes for user js callbacks.

const IBOM_EVENT_TYPES = {
  ALL: "all",
  HIGHLIGHT_EVENT: "highlightEvent",
  CHECKBOX_CHANGE_EVENT: "checkboxChangeEvent",
  BOM_BODY_CHANGE_EVENT: "bomBodyChangeEvent",
}

const EventHandler = {
  callbacks: {},
  init: function() {
    for (eventType of Object.values(IBOM_EVENT_TYPES))
      this.callbacks[eventType] = [];
  },
  registerCallback: function(eventType, callback) {
    this.callbacks[eventType].push(callback);
  },
  emitEvent: function(eventType, eventArgs) {
    event = {
      eventType: eventType,
      args: eventArgs,
    }
    var callback;
    for(callback of this.callbacks[eventType])
      callback(event);
    for(callback of this.callbacks[IBOM_EVENT_TYPES.ALL])
      callback(event);
  }
}
EventHandler.init();

///////////////////////////////////////////////

///////////////////////////////////////////////
/* PCB rendering code */

var emptyContext2d = document.createElement("canvas").getContext("2d");
var hitTestContext2d = document.createElement("canvas").getContext("2d");

function deg2rad(deg) {
  return deg * Math.PI / 180;
}

function calcFontPoint(linepoint, text, offsetx, offsety, tilt) {
  var point = [
    linepoint[0] * text.width + offsetx,
    linepoint[1] * text.height + offsety
  ];
  // This approximates pcbnew behavior with how text tilts depending on horizontal justification
  point[0] -= (linepoint[1] + 0.5 * (1 + text.justify[0])) * text.height * tilt;
  return point;
}

function drawText(ctx, text, color) {
  if ("ref" in text && !settings.renderReferences) return;
  if ("val" in text && !settings.renderValues) return;
  ctx.save();
  ctx.fillStyle = color;
  ctx.strokeStyle = color;
  ctx.lineCap = "round";
  ctx.lineJoin = "round";
  ctx.lineWidth = text.thickness;

  if ("svgpath" in text) {    
    // TODO: This path must be cached!
    const path = new Path2D(text.svgpath);
    if(text.useTrueTypeFontRendering) {            
      ctx.fill(path);
    } else {
      ctx.stroke(path);
    }
    
    ctx.restore();
    return;
  }

  ctx.translate(...text.pos);
  ctx.translate(text.thickness * 0.5, 0);
  var angle = -text.angle;
  if (text.attr.includes("mirrored")) {
    ctx.scale(-1, 1);
    angle = -angle;
  }
  var tilt = 0;
  if (text.attr.includes("italic")) {
    tilt = 0.125;
  }
  var interline = text.height * 1.5 + text.thickness;
  var txt = text.text.split("\n");
  // KiCad ignores last empty line.
  if (txt[txt.length - 1] == '') txt.pop();
  ctx.rotate(deg2rad(angle));
  var offsety = (1 - text.justify[1]) / 2 * text.height; // One line offset
  offsety -= (txt.length - 1) * (text.justify[1] + 1) / 2 * interline; // Multiline offset
  for (var i in txt) {
    var lineWidth = text.thickness + interline / 2 * tilt;
    for (var j = 0; j < txt[i].length; j++) {
      if (txt[i][j] == '\t') {
        var fourSpaces = 4 * pcbdata.font_data[' '].w * text.width;
        lineWidth += fourSpaces - lineWidth % fourSpaces;
      } else {
        if (txt[i][j] == '~') {
          j++;
          if (j == txt[i].length)
            break;
        }
        lineWidth += pcbdata.font_data[txt[i][j]].w * text.width;
      }
    }
    var offsetx = -lineWidth * (text.justify[0] + 1) / 2;
    var inOverbar = false;
    for (var j = 0; j < txt[i].length; j++) {
      if (txt[i][j] == '\t') {
        var fourSpaces = 4 * pcbdata.font_data[' '].w * text.width;
        offsetx += fourSpaces - offsetx % fourSpaces;
        continue;
      } else if (txt[i][j] == '~') {
        j++;
        if (j == txt[i].length)
          break;
        if (txt[i][j] != '~') {
          inOverbar = !inOverbar;
        }
      }
      var glyph = pcbdata.font_data[txt[i][j]];
      if (inOverbar) {
        var overbarStart = [offsetx, -text.height * 1.4 + offsety];
        var overbarEnd = [offsetx + text.width * glyph.w, overbarStart[1]];

        if (!lastHadOverbar) {
          overbarStart[0] += text.height * 1.4 * tilt;
          lastHadOverbar = true;
        }
        ctx.beginPath();
        ctx.moveTo(...overbarStart);
        ctx.lineTo(...overbarEnd);
        ctx.stroke();
      } else {
        lastHadOverbar = false;
      }
      for (var line of glyph.l) {
        ctx.beginPath();
        ctx.moveTo(...calcFontPoint(line[0], text, offsetx, offsety, tilt));
        for (var k = 1; k < line.length; k++) {
          ctx.lineTo(...calcFontPoint(line[k], text, offsetx, offsety, tilt));
        }
        ctx.stroke();
      }
      offsetx += glyph.w * text.width;
    }
    offsety += interline;
  }
  ctx.restore();
}

function drawedge(ctx, scalefactor, edge, color) {
  ctx.strokeStyle = color;
  ctx.lineWidth = Math.max(1 / scalefactor, edge.width);
  ctx.lineCap = "round";
  if ("svgpath" in edge) {
    ctx.stroke(new Path2D(edge.svgpath));
  } else {
    ctx.beginPath();
    if (edge.type == "segment") {
      ctx.moveTo(...edge.start);
      ctx.lineTo(...edge.end);
    }
    if (edge.type == "rect") {
      ctx.moveTo(...edge.start);
      ctx.lineTo(edge.start[0], edge.end[1]);
      ctx.lineTo(...edge.end);
      ctx.lineTo(edge.end[0], edge.start[1]);
      ctx.lineTo(...edge.start);
    }
    if (edge.type == "arc") {
      ctx.arc(
        ...edge.start,
        edge.radius,
        deg2rad(edge.startangle),
        deg2rad(edge.endangle));
    }
    if (edge.type == "circle") {
      ctx.arc(
        ...edge.start,
        edge.radius,
        0, 2 * Math.PI);
      ctx.closePath();
    }
    if (edge.type == "curve") {
      ctx.moveTo(...edge.start);
      ctx.bezierCurveTo(...edge.cpa, ...edge.cpb, ...edge.end);
    }
    ctx.stroke();
  }
}

function getChamferedRectPath(size, radius, chamfpos, chamfratio) {
  // chamfpos is a bitmask, left = 1, right = 2, bottom left = 4, bottom right = 8
  var path = new Path2D();
  var width = size[0];
  var height = size[1];
  var x = width * -0.5;
  var y = height * -0.5;
  var chamfOffset = Math.min(width, height) * chamfratio;
  path.moveTo(x, 0);
  if (chamfpos & 4) {
    path.lineTo(x, y + height - chamfOffset);
    path.lineTo(x + chamfOffset, y + height);
    path.lineTo(0, y + height);
  } else {
    path.arcTo(x, y + height, x + width, y + height, radius);
  }
  if (chamfpos & 8) {
    path.lineTo(x + width - chamfOffset, y + height);
    path.lineTo(x + width, y + height - chamfOffset);
    path.lineTo(x + width, 0);
  } else {
    path.arcTo(x + width, y + height, x + width, y, radius);
  }
  if (chamfpos & 2) {
    path.lineTo(x + width, y + chamfOffset);
    path.lineTo(x + width - chamfOffset, y);
    path.lineTo(0, y);
  } else {
    path.arcTo(x + width, y, x, y, radius);
  }
  if (chamfpos & 1) {
    path.lineTo(x + chamfOffset, y);
    path.lineTo(x, y + chamfOffset);
    path.lineTo(x, 0);
  } else {
    path.arcTo(x, y, x, y + height, radius);
  }
  path.closePath();
  return path;
}

function getOblongPath(size) {
  return getChamferedRectPath(size, Math.min(size[0], size[1]) / 2, 0, 0);
}

function getPolygonsPath(shape) {
  if (shape.path2d) {
    return shape.path2d;
  }
  if ("svgpath" in shape) {
    shape.path2d = new Path2D(shape.svgpath);
  } else {
    var path = new Path2D();
    for (var polygon of shape.polygons) {
      path.moveTo(...polygon[0]);
      for (var i = 1; i < polygon.length; i++) {
        path.lineTo(...polygon[i]);
      }
      path.closePath();
    }
    shape.path2d = path;
  }
  return shape.path2d;
}

function drawPolygonShape(ctx, shape, color) {
  ctx.save();
  ctx.fillStyle = color;
  if (!("svgpath" in shape)) {
    ctx.translate(...shape.pos);
    ctx.rotate(deg2rad(-shape.angle));
  }
  ctx.fill(getPolygonsPath(shape));
  ctx.restore();
}


function drawPolylineShape(ctx, shape, color) {
  ctx.save();
  ctx.strokeStyle = color;
  ctx.lineWidth = shape.width;
  if (!("svgpath" in shape)) {
    ctx.translate(...shape.pos);
    ctx.rotate(deg2rad(-shape.angle));
  }
  ctx.stroke(getPolygonsPath(shape));
  ctx.restore();
}

function drawDrawing(ctx, scalefactor, drawing, color) {  
  if (["segment", "arc", "circle", "curve"].includes(drawing.type)) {
    drawedge(ctx, scalefactor, drawing, color);
  } else if (drawing.type == "polygon") {
    drawPolygonShape(ctx, drawing, color);
  } else if (drawing.type == "text") {    
    drawText(ctx, drawing, color);
  } else if (drawing.type == "polyline") {    
    drawPolylineShape(ctx, drawing, color);
  }
}

function getCirclePath(radius) {
  var path = new Path2D();
  path.arc(0, 0, radius, 0, 2 * Math.PI);
  path.closePath();
  return path;
}

function getCachedPadPath(pad) {
  if (!pad.path2d) {
    // if path2d is not set, build one and cache it on pad object
    if (pad.shape == "rect") {
      pad.path2d = new Path2D();
      pad.path2d.rect(...pad.size.map(c => -c * 0.5), ...pad.size);
    } else if (pad.shape == "oval") {
      pad.path2d = getOblongPath(pad.size);
    } else if (pad.shape == "circle") {
      pad.path2d = getCirclePath(pad.size[0] / 2);
    } else if (pad.shape == "roundrect") {
      pad.path2d = getChamferedRectPath(pad.size, pad.radius, 0, 0);
    } else if (pad.shape == "chamfrect") {
      pad.path2d = getChamferedRectPath(pad.size, pad.radius, pad.chamfpos, pad.chamfratio)
    } else if (pad.shape == "custom") {
      pad.path2d = getPolygonsPath(pad);
    } else if(pad.shape === "polygon") {      
      pad.path2d = new Path2D();
      if(pad.polygon.length > 1) {
        const pos = {
          x: pad.pos[0],
          y: pad.pos[1]
        };

        pad.path2d.moveTo(pad.polygon[0].x - pos.x, pad.polygon[0].y - pos.y);
        for (var i = 1; i < pad.polygon.length; i++) {
          const point = pad.polygon[i];          
          pad.path2d.lineTo(point.x - pos.x, point.y - pos.y);
        }
        pad.path2d.closePath();              
      }
    }
  }
  return pad.path2d;
}

function drawPad(ctx, pad, color, outline) {
  ctx.save();
  ctx.translate(...pad.pos);
  if(pad.shape !== 'polygon') {
    ctx.rotate(deg2rad(pad.angle));  
  } else {
    ctx.rotate(deg2rad(0));  
  }
  
  if (pad.offset) {
    ctx.translate(...pad.offset);
  }
  ctx.fillStyle = color;
  ctx.strokeStyle = color;
  var path = getCachedPadPath(pad);
  if (outline) {
    ctx.stroke(path);
  } else {
    ctx.fill(path);
  }
  ctx.restore();
}

function drawPadHole(ctx, pad, padHoleColor) {
  if (pad.type != "th") {
    return
  };

  ctx.save();
  ctx.translate(pad.holeCenterPoint.x, pad.holeCenterPoint.y);    
  ctx.rotate(deg2rad(pad.angle));
  ctx.fillStyle = padHoleColor;
  if (pad.drillshape == "oblong") {
    ctx.fill(getOblongPath(pad.drillsize));
  } else {
    ctx.fill(getCirclePath(pad.drillsize[0] / 2));
  }
  ctx.restore();
}

function drawFootprint(ctx, layer, scalefactor, footprint, padColor, padHoleColor, outlineColor, highlight, outline) {
  if (highlight) {
    // draw bounding box
    if (footprint.layer == layer) {
      ctx.save();
      ctx.globalAlpha = 0.2;
      ctx.translate(...footprint.bbox.pos);
      ctx.rotate(deg2rad(-footprint.bbox.angle));
      ctx.translate(...footprint.bbox.relpos);
      ctx.fillStyle = padColor;
      ctx.fillRect(0, 0, ...footprint.bbox.size);
      ctx.globalAlpha = 1;
      ctx.strokeStyle = padColor;
      ctx.strokeRect(0, 0, ...footprint.bbox.size);
      ctx.restore();
    }
  }
  // draw drawings
  for (var drawing of footprint.drawings) {
    if (drawing.layer == layer) {
      drawDrawing(ctx, scalefactor, drawing.drawing, padColor);
    }
  }
  // draw pads
  if (settings.renderPads) {
    for (var pad of footprint.pads) {
      if (pad.layers.includes(layer)) {
        drawPad(ctx, pad, padColor, outline);
        if (pad.pin1 && settings.highlightpin1) {
          drawPad(ctx, pad, outlineColor, true);
        }
      }
    }
    for (var pad of footprint.pads) {
      drawPadHole(ctx, pad, padHoleColor);
    }
  }
}

function drawCrosshair(canvas, x, y, scalefactor, color) {
  if(!settings.showCrosshair) {
    return;
  }

  var ctx = canvas.getContext("2d");

  HTMLFormControlsCollection.log
  
  ctx.save();
  ctx.globalAlpha = 0.75;
  ctx.lineWidth = 2 / scalefactor;
  ctx.strokeStyle = color;

  // TODO: Should calculate a proper bbox for the view port.
  const dummyOffset = 4000;

  // horz line
  ctx.beginPath();
  ctx.moveTo(x - dummyOffset, y);
  ctx.lineTo(x + dummyOffset, y);
  ctx.stroke();

  // vert line
  ctx.beginPath();
  ctx.moveTo(x, y - dummyOffset);
  ctx.lineTo(x, y + dummyOffset);
  ctx.stroke();

  ctx.globalAlpha = 1;
  ctx.restore();
}

function drawEdgeCuts(canvas, scalefactor) {
  var ctx = canvas.getContext("2d");
  var edgecolor = getComputedStyle(topmostdiv).getPropertyValue('--pcb-edge-color');
  for (var edge of pcbdata.edges) {
    drawedge(ctx, scalefactor, edge, edgecolor);
  }
}

function drawOrphanPads(canvas, layer, scalefactor, highlight, highlightedPads) {
  if (!settings.renderPads) {
    return;
  }

  highlightedPads = highlightedPads || [];

  var ctx = canvas.getContext("2d");
  ctx.save();
  ctx.lineWidth = 3 / scalefactor;
  var style = getComputedStyle(topmostdiv);
  var padColor = style.getPropertyValue('--pad-color');
  var padHoleColor = style.getPropertyValue('--pad-hole-color');  
  if (highlight) {
    padColor = style.getPropertyValue('--pad-color-highlight');
    outlineColor = style.getPropertyValue('--pin1-outline-color-highlight');
  }

  var i = 0;
  for (var pad of pcbdata.pads) {
    if (pad.layers.includes(layer)) {
      var outline = settings.renderDnpOutline;
      if (!highlight || highlightedPads.includes(i)) {
        drawPad(ctx, pad, padColor, outline); 
      }     
    }

    i++;
  }
  
  for (var pad of pcbdata.pads) {
    drawPadHole(ctx, pad, padHoleColor);
  }  

  ctx.restore();
}

function drawFootprints(canvas, layer, scalefactor, highlight) {
  var ctx = canvas.getContext("2d");
  ctx.save();
  ctx.lineWidth = 3 / scalefactor;
  var style = getComputedStyle(topmostdiv);
  var padColor = style.getPropertyValue('--pad-color');
  var padHoleColor = style.getPropertyValue('--pad-hole-color');
  var outlineColor = style.getPropertyValue('--pin1-outline-color');
  if (highlight) {
    padColor = style.getPropertyValue('--pad-color-highlight');
    outlineColor = style.getPropertyValue('--pin1-outline-color-highlight');
  }
  for (var i = 0; i < pcbdata.footprints.length; i++) {
    var mod = pcbdata.footprints[i];
    var outline = settings.renderDnpOutline && pcbdata.bom.skipped.includes(i);
    if (!highlight || highlightedFootprints.includes(i)) {
      drawFootprint(ctx, layer, scalefactor, mod, padColor, padHoleColor, outlineColor, highlight, outline);
    }
  }
  ctx.restore();
}

function drawBgLayer(layername, canvas, layer, scalefactor, edgeColor, polygonColor, textColor) {
  var ctx = canvas.getContext("2d");
  for (var d of pcbdata.drawings[layername][layer]) {
    if (["segment", "arc", "circle", "curve", "rect","polyline"].includes(d.type)) {
      drawedge(ctx, scalefactor, d, edgeColor);
    } else if (d.type == "polygon") {
      drawPolygonShape(ctx, d, polygonColor);
    } else if (d.type == "text") {
      drawText(ctx, d, polygonColor);
    }
  }
}

function drawTracks(canvas, layer, color, highlight) {
  ctx = canvas.getContext("2d");
  ctx.strokeStyle = color;
  ctx.lineCap = "round";
  for(var track of pcbdata.tracks[layer]) {
    if (highlight && highlightedNet != track.net) continue;
    ctx.lineWidth = track.width;

    if(track.type === 'polyline') {
      drawPolylineShape(ctx,track,color);
    } else if(track.type === 'polygon') {
      drawPolygonShape(ctx, track, color);
    } else if(track.type === 'text') {
      drawText(ctx, track, color);
    } else {
      if ('radius' in track) {
        ctx.beginPath();
        ctx.arc(
            ...track.center,
            track.radius,
            deg2rad(track.startangle),
            deg2rad(track.endangle));
        ctx.stroke();
      } else if('start' in track && 'end' in track) {
        ctx.beginPath();
        ctx.moveTo(...track.start);
        ctx.lineTo(...track.end);
        ctx.stroke();
      }
      
    }

  }
}

function drawZones(canvas, layer, color, highlight) {
  ctx = canvas.getContext("2d");
  ctx.save();
  ctx.strokeStyle = color;
  ctx.fillStyle = color;
  ctx.lineJoin = "round";
  for(var zone of pcbdata.zones[layer]) {
    if (!zone.path2d) {
      zone.path2d = getPolygonsPath(zone);
    }
    if (highlight && highlightedNet != zone.net) continue;
    ctx.fill(zone.path2d);
    if (zone.width > 0) {
      ctx.lineWidth = zone.width;
      ctx.stroke(zone.path2d);
    }
  }
  ctx.restore();
}

function clearCanvas(canvas, color = null) {
  var ctx = canvas.getContext("2d");
  ctx.save();
  ctx.setTransform(1, 0, 0, 1, 0, 0);
  if (color) {
    ctx.fillStyle = color;
    ctx.fillRect(0, 0, canvas.width, canvas.height);
  } else {
    ctx.clearRect(0, 0, canvas.width, canvas.height);
  }
  ctx.restore();
}

function drawNets(canvas, layer, highlight) {
  var style = getComputedStyle(topmostdiv);
  if (settings.renderTracks) {
    var trackColor = style.getPropertyValue(highlight ? '--track-color-highlight' : '--track-color');
    drawTracks(canvas, layer, trackColor, highlight);
  }
  if (settings.renderZones) {
    var zoneColor = style.getPropertyValue(highlight ? '--zone-color-highlight' : '--zone-color');
    drawZones(canvas, layer, zoneColor, highlight);
  }
  if (highlight && settings.renderPads) {
    var padColor = style.getPropertyValue('--pad-color-highlight');
    var padHoleColor = style.getPropertyValue('--pad-hole-color');
    var ctx = canvas.getContext("2d");
    for (var footprint of pcbdata.footprints) {
      // draw pads
      var padDrawn = false;
      for (var pad of footprint.pads) {
        if (highlightedNet != pad.net) continue;
        if (pad.layers.includes(layer)) {
          drawPad(ctx, pad, padColor, false);
          padDrawn = true;
        }
      }
      if (padDrawn) {
        // redraw all pad holes because some pads may overlap
        for (var pad of footprint.pads) {
          drawPadHole(ctx, pad, padHoleColor);
        }
      }
    }
  }
}

function drawHighlightsOnLayer(canvasdict, clear = true) {
  if (clear) {
    clearCanvas(canvasdict.highlight);
  }
  
  if (highlightedFootprints.length > 0) {
    drawFootprints(canvasdict.highlight, canvasdict.layer,
      canvasdict.transform.s * canvasdict.transform.zoom, true);
  }

  // Draw crosshairs
  if (highlightedFootprints.length > 0) {
    for(var i = 0; i < pcbdata.footprints.length; i++) {
      const footprint = pcbdata.footprints[i];
      if(highlightedFootprints.includes(i) && footprint.layer === canvasdict.layer) {
        drawCrosshair(canvasdict.highlight, footprint.center[0], footprint.center[1], canvasdict.transform.s * canvasdict.transform.zoom, 'red');
      }
    }
  }

  if (highlightedNet !== null) {
    var highlightedPads = [];
    for(var i = 0; i < pcbdata.pads.length; i++) {
      var pad = pcbdata.pads[i];
      if(pad.net === highlightedNet) {
        highlightedPads.push(i);
      }
    }
    
    drawOrphanPads(canvasdict.highlight, canvasdict.layer,
      canvasdict.transform.s * canvasdict.transform.zoom, true, highlightedPads);

    drawNets(canvasdict.highlight, canvasdict.layer, true);
  }
}

function drawHighlights() {
  drawHighlightsOnLayer(allcanvas.front);
  drawHighlightsOnLayer(allcanvas.back);
}

function drawBackground(canvasdict, clear = true) {
  if (clear) {
    clearCanvas(canvasdict.bg);
    clearCanvas(canvasdict.fab);
    clearCanvas(canvasdict.silk);
  }

  drawNets(canvasdict.bg, canvasdict.layer, false);

  drawOrphanPads(canvasdict.bg, canvasdict.layer, canvasdict.transform.s * canvasdict.transform.zoom, false);

  drawFootprints(canvasdict.bg, canvasdict.layer, canvasdict.transform.s * canvasdict.transform.zoom, false);

  drawEdgeCuts(canvasdict.bg, canvasdict.transform.s);

  var style = getComputedStyle(topmostdiv);
  var edgeColor = style.getPropertyValue('--silkscreen-edge-color');
  var polygonColor = style.getPropertyValue('--silkscreen-polygon-color');
  var textColor = style.getPropertyValue('--silkscreen-text-color');
  if (settings.renderSilkscreen) {
    drawBgLayer(
      "silkscreen", canvasdict.silk, canvasdict.layer,
      canvasdict.transform.s * canvasdict.transform.zoom,
      edgeColor, polygonColor, textColor);
  }
  edgeColor = style.getPropertyValue('--fabrication-edge-color');
  polygonColor = style.getPropertyValue('--fabrication-polygon-color');
  textColor = style.getPropertyValue('--fabrication-text-color');
  if (settings.renderFabrication) {
    drawBgLayer(
      "fabrication", canvasdict.fab, canvasdict.layer,
      canvasdict.transform.s * canvasdict.transform.zoom,
      edgeColor, polygonColor, textColor);
  }
}

function prepareCanvas(canvas, flip, transform) {
  var ctx = canvas.getContext("2d");
  ctx.setTransform(1, 0, 0, 1, 0, 0);
  var fontsize = 1.55;
  ctx.scale(transform.zoom, transform.zoom);
  ctx.translate(transform.panx, transform.pany);
  if (flip) {
    ctx.scale(-1, 1);
  }
  ctx.translate(transform.x, transform.y);
  ctx.rotate(deg2rad(settings.boardRotation));
  ctx.scale(transform.s, transform.s);
}

function prepareLayer(canvasdict) {
  var flip = (canvasdict.layer == "B");
  for (var c of ["bg", "fab", "silk", "highlight"]) {
    prepareCanvas(canvasdict[c], flip, canvasdict.transform);
  }
}

function rotateVector(v, angle) {
  angle = deg2rad(angle);
  return [
    v[0] * Math.cos(angle) - v[1] * Math.sin(angle),
    v[0] * Math.sin(angle) + v[1] * Math.cos(angle)
  ];
}

function applyRotation(bbox) {
  var corners = [
    [bbox.minx, bbox.miny],
    [bbox.minx, bbox.maxy],
    [bbox.maxx, bbox.miny],
    [bbox.maxx, bbox.maxy],
  ];
  corners = corners.map((v) => rotateVector(v, settings.boardRotation));
  return {
    minx: corners.reduce((a, v) => Math.min(a, v[0]), Infinity),
    miny: corners.reduce((a, v) => Math.min(a, v[1]), Infinity),
    maxx: corners.reduce((a, v) => Math.max(a, v[0]), -Infinity),
    maxy: corners.reduce((a, v) => Math.max(a, v[1]), -Infinity),
  }
}

function recalcLayerScale(layerdict, width, height) {
  var bbox = applyRotation(pcbdata.edges_bbox);
  var scalefactor = 0.98 * Math.min(
    width / (bbox.maxx - bbox.minx),
    height / (bbox.maxy - bbox.miny)
  );
  if (scalefactor < 0.1) {
    scalefactor = 1;
  }
  layerdict.transform.s = scalefactor;
  var flip = (layerdict.layer == "B");
  if (flip) {
    layerdict.transform.x = -((bbox.maxx + bbox.minx) * scalefactor + width) * 0.5;
  } else {
    layerdict.transform.x = -((bbox.maxx + bbox.minx) * scalefactor - width) * 0.5;
  }
  layerdict.transform.y = -((bbox.maxy + bbox.miny) * scalefactor - height) * 0.5;
  for (var c of ["bg", "fab", "silk", "highlight"]) {
    canvas = layerdict[c];
    canvas.width = width;
    canvas.height = height;
    canvas.style.width = (width / devicePixelRatio) + "px";
    canvas.style.height = (height / devicePixelRatio) + "px";
  }
}

function redrawCanvas(layerdict) {
  prepareLayer(layerdict);
  drawBackground(layerdict);
  drawHighlightsOnLayer(layerdict);
}

function resizeCanvas(layerdict) {
  var canvasdivid = {
    "F": "frontcanvas",
    "B": "backcanvas"
  } [layerdict.layer];
  var width = document.getElementById(canvasdivid).clientWidth * devicePixelRatio;
  var height = document.getElementById(canvasdivid).clientHeight * devicePixelRatio;
  recalcLayerScale(layerdict, width, height);
  redrawCanvas(layerdict);
}

function resizeAll() {
  resizeCanvas(allcanvas.front);
  resizeCanvas(allcanvas.back);
}

function pointWithinDistanceToSegment(x, y, x1, y1, x2, y2, d) {
  var A = x - x1;
  var B = y - y1;
  var C = x2 - x1;
  var D = y2 - y1;

  var dot = A * C + B * D;
  var len_sq = C * C + D * D;
  var dx, dy;
  if (len_sq == 0) {
    // start and end of the segment coincide
    dx = x - x1;
    dy = y - y1;
  } else {
    var param = dot / len_sq;
    var xx, yy;
    if (param < 0) {
      xx = x1;
      yy = y1;
    } else if (param > 1) {
      xx = x2;
      yy = y2;
    } else {
      xx = x1 + param * C;
      yy = y1 + param * D;
    }
    dx = x - xx;
    dy = y - yy;
  }
  return dx * dx + dy * dy <= d * d;
}

function modulo(n, mod) {
  return ((n % mod) + mod ) % mod;
}

function pointWithinDistanceToArc(x, y, xc, yc, radius, startangle, endangle, d) {
  var dx = x - xc;
  var dy = y - yc;
  var r_sq = dx * dx + dy * dy;
  var rmin = Math.max(0, radius-d);
  var rmax = radius + d;

  if (r_sq < rmin * rmin || r_sq > rmax * rmax)
    return false;

  var angle1 = modulo(deg2rad(startangle), 2 * Math.PI);
  var dx1 = xc + radius * Math.cos(angle1) - x;
  var dy1 = yc + radius * Math.sin(angle1) - y;
  if (dx1 * dx1 + dy1 * dy1 <= d * d)
    return true;

  var angle2 = modulo(deg2rad(endangle), 2 * Math.PI);
  var dx2 = xc + radius * Math.cos(angle2) - x;
  var dy2 = yc + radius * Math.sin(angle2) - y;
  if (dx2 * dx2 + dy2 * dy2 <= d * d)
    return true;

  var angle = modulo(Math.atan2(dy, dx), 2 * Math.PI);
  if (angle1 > angle2)
    return (angle >= angle2 || angle <= angle1);
  else
    return (angle >= angle1 && angle <= angle2);
}

function pointWithinPad(x, y, pad) {
  var v = [x - pad.pos[0], y - pad.pos[1]];
  v = rotateVector(v, -pad.angle);
  if (pad.offset) {
    v[0] -= pad.offset[0];
    v[1] -= pad.offset[1];
  }
  return emptyContext2d.isPointInPath(getCachedPadPath(pad), ...v);
}

function netHitScan(layer, x, y) {
  // TODO: Should be refactored

  // Check track segments
  if (settings.renderTracks && pcbdata.tracks) {
    for(var track of pcbdata.tracks[layer]) {
      if(track.type === 'polyline') {
        const path = getPolygonsPath(track);
        if(path) {
          hitTestContext2d.save();
          hitTestContext2d.lineWidth = track.width;
          
          if(hitTestContext2d.isPointInStroke(path,x,y)) {
            hitTestContext2d.restore();
            return track.net;            
          }
          
          hitTestContext2d.restore();          
        }        

      } else if(track.type === 'polygon') {
        const path = getPolygonsPath(track);
        if(path && hitTestContext2d.isPointInPath(path,x,y)) {          
          return track.net;                      
        }                     
      } else if(track.type === 'text') {
        // TODO: To implement taking in account TrueType fonts.
      } else if ('radius' in track) {
        if (pointWithinDistanceToArc(x, y, ...track.center, track.radius, track.startangle, track.endangle, track.width / 2)) {
          return track.net;
        }
      } else if('start' in track && 'end' in track) {
        if (pointWithinDistanceToSegment(x, y, ...track.start, ...track.end, track.width / 2)) {
          return track.net;
        }
      }
    }
  }
  // Check pads
  if (settings.renderPads) {

    // Footprints containing pads
    for (var footprint of pcbdata.footprints) {
      for(var pad of footprint.pads) {
        if (pad.layers.includes(layer) && pointWithinPad(x, y, pad)) {
          return pad.net;
        }
      }
    }

    // Orphan pads
    for(var pad of pcbdata.pads) {
      if (pad.layers.includes(layer) && pointWithinPad(x, y, pad)) {
        return pad.net;
      }
    }
  }
  return null;
}

function pointWithinFootprintBbox(x, y, bbox) {
  var v = [x - bbox.pos[0], y - bbox.pos[1]];
  v = rotateVector(v, bbox.angle);
  return bbox.relpos[0] <= v[0] && v[0] <= bbox.relpos[0] + bbox.size[0] &&
         bbox.relpos[1] <= v[1] && v[1] <= bbox.relpos[1] + bbox.size[1];
}

function bboxHitScan(layer, x, y) {
  var result = [];
  for (var i = 0; i < pcbdata.footprints.length; i++) {
    var footprint = pcbdata.footprints[i];
    if (footprint.layer == layer) {
      if (pointWithinFootprintBbox(x, y, footprint.bbox)) {
        result.push(i);
      }
    }
  }
  return result;
}

function handlePointerDown(e, layerdict) {
  if (e.button != 0 && e.button != 1) {
    return;
  }
  e.preventDefault();
  e.stopPropagation();

  if (!e.hasOwnProperty("offsetX")) {
    // The polyfill doesn't set this properly
    e.offsetX = e.pageX - e.currentTarget.offsetLeft;
    e.offsetY = e.pageY - e.currentTarget.offsetTop;
  }

  layerdict.pointerStates[e.pointerId] = {
    distanceTravelled: 0,
    lastX: e.offsetX,
    lastY: e.offsetY,
    downTime: Date.now(),
  };
}

function handleMouseClick(e, layerdict) {
  if (!e.hasOwnProperty("offsetX")) {
    // The polyfill doesn't set this properly
    e.offsetX = e.pageX - e.currentTarget.offsetLeft;
    e.offsetY = e.pageY - e.currentTarget.offsetTop;
  }

  var x = e.offsetX;
  var y = e.offsetY;
  var t = layerdict.transform;
  if (layerdict.layer == "B") {
    x = (devicePixelRatio * x / t.zoom - t.panx + t.x) / -t.s;
  } else {
    x = (devicePixelRatio * x / t.zoom - t.panx - t.x) / t.s;
  }
  y = (devicePixelRatio * y / t.zoom - t.y - t.pany) / t.s;
  var v = rotateVector([x, y], -settings.boardRotation);
  if ("nets" in pcbdata) {
    var net = netHitScan(layerdict.layer, ...v);
    if (net !== highlightedNet) {
      netClicked(net);
    }
  }
  if (highlightedNet === null) {
    var footprints = bboxHitScan(layerdict.layer, ...v);
    if (footprints.length > 0) {
      footprintsClicked(footprints);
    }
  }
}

function handlePointerLeave(e, layerdict) {
  e.preventDefault();
  e.stopPropagation();

  if (!settings.redrawOnDrag) {
    redrawCanvas(layerdict);
  }

  delete layerdict.pointerStates[e.pointerId];
}

function resetTransform(layerdict) {
  layerdict.transform.panx = 0;
  layerdict.transform.pany = 0;
  layerdict.transform.zoom = 1;
  redrawCanvas(layerdict);
}

function handlePointerUp(e, layerdict) {
  if (!e.hasOwnProperty("offsetX")) {
    // The polyfill doesn't set this properly
    e.offsetX = e.pageX - e.currentTarget.offsetLeft;
    e.offsetY = e.pageY - e.currentTarget.offsetTop;
  }

  e.preventDefault();
  e.stopPropagation();

  if (e.button == 2) {
    // Reset pan and zoom on right click.
    resetTransform(layerdict);
    layerdict.anotherPointerTapped = false;
    return;
  }

  // We haven't necessarily had a pointermove event since the interaction started, so make sure we update this now
  var ptr = layerdict.pointerStates[e.pointerId];
  ptr.distanceTravelled += Math.abs(e.offsetX - ptr.lastX) + Math.abs(e.offsetY - ptr.lastY);

  if (e.button == 0 && ptr.distanceTravelled < 10 && Date.now() - ptr.downTime <= 500) {
    if (Object.keys(layerdict.pointerStates).length == 1) {
      if (layerdict.anotherPointerTapped) {
        // This is the second pointer coming off of a two-finger tap
        resetTransform(layerdict);
      } else {
        // This is just a regular tap
        handleMouseClick(e, layerdict);
      }
      layerdict.anotherPointerTapped = false;
    } else {
      // This is the first finger coming off of what could become a two-finger tap
      layerdict.anotherPointerTapped = true;
    }
  } else {
    if (!settings.redrawOnDrag) {
      redrawCanvas(layerdict);
    }
    layerdict.anotherPointerTapped = false;
  }

  delete layerdict.pointerStates[e.pointerId];
}

function handlePointerMove(e, layerdict) {
  if (!layerdict.pointerStates.hasOwnProperty(e.pointerId)) {
    return;
  }
  e.preventDefault();
  e.stopPropagation();

  if (!e.hasOwnProperty("offsetX")) {
    // The polyfill doesn't set this properly
    e.offsetX = e.pageX - e.currentTarget.offsetLeft;
    e.offsetY = e.pageY - e.currentTarget.offsetTop;
  }

  var thisPtr = layerdict.pointerStates[e.pointerId];

  var dx = e.offsetX - thisPtr.lastX;
  var dy = e.offsetY - thisPtr.lastY;

  // If this number is low on pointer up, we count the action as a click
  thisPtr.distanceTravelled += Math.abs(dx) + Math.abs(dy);

  if (Object.keys(layerdict.pointerStates).length == 1) {
    // This is a simple drag
    layerdict.transform.panx += devicePixelRatio * dx / layerdict.transform.zoom;
    layerdict.transform.pany += devicePixelRatio * dy / layerdict.transform.zoom;
  } else if (Object.keys(layerdict.pointerStates).length == 2) {
    var otherPtr = Object.values(layerdict.pointerStates).filter((ptr) => ptr != thisPtr)[0];

    var oldDist = Math.sqrt(Math.pow(thisPtr.lastX - otherPtr.lastX, 2) + Math.pow(thisPtr.lastY - otherPtr.lastY, 2));
    var newDist = Math.sqrt(Math.pow(e.offsetX - otherPtr.lastX, 2)     + Math.pow(e.offsetY - otherPtr.lastY, 2));

    var scaleFactor = newDist/oldDist;

    if (scaleFactor != NaN) {
      layerdict.transform.zoom *= scaleFactor;

      var zoomd = (1 - scaleFactor) / layerdict.transform.zoom;
      layerdict.transform.panx += devicePixelRatio * otherPtr.lastX * zoomd;
      layerdict.transform.pany += devicePixelRatio * otherPtr.lastY * zoomd;
    }
  }

  thisPtr.lastX = e.offsetX;
  thisPtr.lastY = e.offsetY;

  if (settings.redrawOnDrag) {
    redrawCanvas(layerdict);
  }
}

function handleMouseWheel(e, layerdict) {
  e.preventDefault();
  e.stopPropagation();
  var t = layerdict.transform;
  var wheeldelta = e.deltaY;
  if (e.deltaMode == 1) {
    // FF only, scroll by lines
    wheeldelta *= 30;
  } else if (e.deltaMode == 2) {
    wheeldelta *= 300;
  }
  var m = Math.pow(1.1, -wheeldelta / 40);
  // Limit amount of zoom per tick.
  if (m > 2) {
    m = 2;
  } else if (m < 0.5) {
    m = 0.5;
  }
  t.zoom *= m;
  var zoomd = (1 - m) / t.zoom;
  t.panx += devicePixelRatio * e.offsetX * zoomd;
  t.pany += devicePixelRatio * e.offsetY * zoomd;
  redrawCanvas(layerdict);
}

function addMouseHandlers(div, layerdict) {
  div.addEventListener("pointerdown", function(e) {
    handlePointerDown(e, layerdict);
  });
  div.addEventListener("pointermove", function(e) {
    handlePointerMove(e, layerdict);
  });
  div.addEventListener("pointerup", function(e) {
    handlePointerUp(e, layerdict);
  });
  var pointerleave = function(e) {
    handlePointerLeave(e, layerdict);
  }
  div.addEventListener("pointercancel", pointerleave);
  div.addEventListener("pointerleave", pointerleave);
  div.addEventListener("pointerout", pointerleave);

  div.onwheel = function(e) {
    handleMouseWheel(e, layerdict);
  }
  for (var element of [div, layerdict.bg, layerdict.fab, layerdict.silk, layerdict.highlight]) {
    element.addEventListener("contextmenu", function(e) {
      e.preventDefault();
    }, false);
  }
}

function setRedrawOnDrag(value) {
  settings.redrawOnDrag = value;
  writeStorage("redrawOnDrag", value);
}

function setShowCrosshair(value) {
  settings.showCrosshair = value;
  writeStorage("showCrosshair", value);
}

function setBoardRotation(value) {
  settings.boardRotation = value * 5;
  writeStorage("boardRotation", settings.boardRotation);
  document.getElementById("rotationDegree").textContent = settings.boardRotation;
  resizeAll();
}

function initRender() {
  allcanvas = {
    front: {
      transform: {
        x: 0,
        y: 0,
        s: 1,
        panx: 0,
        pany: 0,
        zoom: 1,
      },
      pointerStates: {},
      anotherPointerTapped: false,
      bg: document.getElementById("F_bg"),
      fab: document.getElementById("F_fab"),
      silk: document.getElementById("F_slk"),
      highlight: document.getElementById("F_hl"),
      layer: "F",
    },
    back: {
      transform: {
        x: 0,
        y: 0,
        s: 1,
        panx: 0,
        pany: 0,
        zoom: 1,
      },
      pointerStates: {},
      anotherPointerTapped: false,
      bg: document.getElementById("B_bg"),
      fab: document.getElementById("B_fab"),
      silk: document.getElementById("B_slk"),
      highlight: document.getElementById("B_hl"),
      layer: "B",
    }
  };
  addMouseHandlers(document.getElementById("frontcanvas"), allcanvas.front);
  addMouseHandlers(document.getElementById("backcanvas"), allcanvas.back);
}

///////////////////////////////////////////////

///////////////////////////////////////////////
/* DOM manipulation and misc code */

var bomsplit;
var canvassplit;
var initDone = false;
var bomSortFunction = null;
var currentSortColumn = null;
var currentSortOrder = null;
var currentHighlightedRowId;
var highlightHandlers = [];
var footprintIndexToHandler = {};
var netsToHandler = {};
var highlightedFootprints = [];
var highlightedOrphanPads = [];
var highlightedNet = null;
var lastClicked;

function dbg(html) {
  dbgdiv.innerHTML = html;
}

function redrawIfInitDone() {
  if (initDone) {
    redrawCanvas(allcanvas.front);
    redrawCanvas(allcanvas.back);
  }
}

function padsVisible(value) {
  writeStorage("padsVisible", value);
  settings.renderPads = value;
  redrawIfInitDone();
}

function referencesVisible(value) {
  writeStorage("referencesVisible", value);
  settings.renderReferences = value;
  redrawIfInitDone();
}

function valuesVisible(value) {
  writeStorage("valuesVisible", value);
  settings.renderValues = value;
  redrawIfInitDone();
}

function tracksVisible(value) {
  writeStorage("tracksVisible", value);
  settings.renderTracks = value;
  redrawIfInitDone();
}

function zonesVisible(value) {
  writeStorage("zonesVisible", value);
  settings.renderZones = value;
  redrawIfInitDone();
}

function dnpOutline(value) {
  writeStorage("dnpOutline", value);
  settings.renderDnpOutline = value;
  redrawIfInitDone();
}

function setDarkMode(value) {
  if (value) {
    topmostdiv.classList.add("dark");
  } else {
    topmostdiv.classList.remove("dark");
  }
  writeStorage("darkmode", value);
  settings.darkMode = value;
  redrawIfInitDone();
}

function setFullscreen(value) {
  if (value) {
    document.documentElement.requestFullscreen();
  } else {
    document.exitFullscreen();
  }
}

function fabricationVisible(value) {
  writeStorage("fabricationVisible", value);
  settings.renderFabrication = value;
  redrawIfInitDone();
}

function silkscreenVisible(value) {
  writeStorage("silkscreenVisible", value);
  settings.renderSilkscreen = value;
  redrawIfInitDone();
}

function setHighlightPin1(value) {
  writeStorage("highlightpin1", value);
  settings.highlightpin1 = value;
  redrawIfInitDone();
}

function getStoredCheckboxRefs(checkbox) {
  function convert(ref) {
    var intref = parseInt(ref);
    if (isNaN(intref)) {
      for (var i = 0; i < pcbdata.footprints.length; i++) {
        if (pcbdata.footprints[i].ref == ref) {
          return i;
        }
      }
      return -1;
    } else {
      return intref;
    }
  }
  if (!(checkbox in settings.checkboxStoredRefs)) {
    var val = readStorage("checkbox_" + checkbox);
    settings.checkboxStoredRefs[checkbox] = val ? val : "";
  }
  if (!settings.checkboxStoredRefs[checkbox]) {
    return new Set();
  } else {
    return new Set(settings.checkboxStoredRefs[checkbox].split(",").map(r => convert(r)).filter(a => a >= 0));
  }
}

function getCheckboxState(checkbox, references) {
  var storedRefsSet = getStoredCheckboxRefs(checkbox);
  var currentRefsSet = new Set(references.map(r => r[1]));
  // Get difference of current - stored
  var difference = new Set(currentRefsSet);
  for (ref of storedRefsSet) {
    difference.delete(ref);
  }
  if (difference.size == 0) {
    // All the current refs are stored
    return "checked";
  } else if (difference.size == currentRefsSet.size) {
    // None of the current refs are stored
    return "unchecked";
  } else {
    // Some of the refs are stored
    return "indeterminate";
  }
}

function setBomCheckboxState(checkbox, element, references) {
  var state = getCheckboxState(checkbox, references);
  element.checked = (state == "checked");
  element.indeterminate = (state == "indeterminate");
}

function createCheckboxChangeHandler(checkbox, references, row) {
  return function() {
    refsSet = getStoredCheckboxRefs(checkbox);
    var darkenWhenChecked = settings.darkenWhenChecked == checkbox;
    eventArgs = {
      checkbox: checkbox,
      refs: references,
    }
    if (this.checked) {
      // checkbox ticked
      for (var ref of references) {
        refsSet.add(ref[1]);
      }
      if (darkenWhenChecked) {
        row.classList.add("checked");
      }
      eventArgs.state = 'checked';
    } else {
      // checkbox unticked
      for (var ref of references) {
        refsSet.delete(ref[1]);
      }
      if (darkenWhenChecked) {
        row.classList.remove("checked");
      }
      eventArgs.state = 'unchecked';
    }
    settings.checkboxStoredRefs[checkbox] = [...refsSet].join(",");
    writeStorage("checkbox_" + checkbox, settings.checkboxStoredRefs[checkbox]);
    updateCheckboxStats(checkbox);
    EventHandler.emitEvent(IBOM_EVENT_TYPES.CHECKBOX_CHANGE_EVENT, eventArgs);
  }
}

function clearHighlightedFootprints() {
  if (currentHighlightedRowId) {
    document.getElementById(currentHighlightedRowId).classList.remove("highlighted");
    currentHighlightedRowId = null;
    highlightedFootprints = [];  
    highlightedOrphanPads = [];  
    highlightedNet = null;
  }
}

function createRowHighlightHandler(rowid, refs, net) {
  return function() {
    if (currentHighlightedRowId) {
      if (currentHighlightedRowId == rowid) {
        return;
      }
      document.getElementById(currentHighlightedRowId).classList.remove("highlighted");
    }
    document.getElementById(rowid).classList.add("highlighted");
    currentHighlightedRowId = rowid;
    highlightedFootprints = refs ? refs.map(r => r[1]) : [];
    highlightedNet = net;
    drawHighlights();
    EventHandler.emitEvent(
      IBOM_EVENT_TYPES.HIGHLIGHT_EVENT,
      {
        rowid: rowid,
        refs: refs,
        net: net
      });
  }
}

function entryMatches(entry) {
  if (settings.bommode == "netlist") {
    // entry is just a net name
    return entry.toLowerCase().indexOf(filter) >= 0;
  }
  // check refs
  for (var ref of entry[3]) {
    if (ref[0].toLowerCase().indexOf(filter) >= 0) {
      return true;
    }
  }
  // check extra fields
  for (var i in config.extra_fields) {
    if (entry[4][i].toLowerCase().indexOf(filter) >= 0) {
      return true;
    }
  }
  // check value
  if (entry[1].toLowerCase().indexOf(filter) >= 0) {
    return true;
  }
  // check footprint
  if (entry[2].toLowerCase().indexOf(filter) >= 0) {
    return true;
  }
  return false;
}

function findRefInEntry(entry) {
  return entry[3].filter(r => r[0].toLowerCase() == reflookup);
}

function highlightFilter(s) {
  if (!filter) {
    return s;
  }
  var parts = s.toLowerCase().split(filter);
  if (parts.length == 1) {
    return s;
  }
  var r = "";
  var pos = 0;
  for (var i in parts) {
    if (i > 0) {
      r += '<mark class="highlight">' +
        s.substring(pos, pos + filter.length) +
        '</mark>';
      pos += filter.length;
    }
    r += s.substring(pos, pos + parts[i].length);
    pos += parts[i].length;
  }
  return r;
}

function checkboxSetUnsetAllHandler(checkboxname) {
  return function() {
    var checkboxnum = 0;
    while (checkboxnum < settings.checkboxes.length &&
      settings.checkboxes[checkboxnum].toLowerCase() != checkboxname.toLowerCase()) {
      checkboxnum++;
    }
    if (checkboxnum >= settings.checkboxes.length) {
      return;
    }
    var allset = true;
    var checkbox;
    var row;
    for (row of bombody.childNodes) {
      checkbox = row.childNodes[checkboxnum + 1].childNodes[0];
      if (!checkbox.checked || checkbox.indeterminate) {
        allset = false;
        break;
      }
    }
    for (row of bombody.childNodes) {
      checkbox = row.childNodes[checkboxnum + 1].childNodes[0];
      checkbox.checked = !allset;
      checkbox.indeterminate = false;
      checkbox.onchange();
    }
  }
}

function createColumnHeader(name, cls, comparator) {
  var th = document.createElement("TH");
  th.innerHTML = name;
  th.classList.add(cls);
  th.style.cursor = "pointer";
  var span = document.createElement("SPAN");
  span.classList.add("sortmark");
  span.classList.add("none");
  th.appendChild(span);
  th.onclick = function() {
    if (currentSortColumn && this !== currentSortColumn) {
      // Currently sorted by another column
      currentSortColumn.childNodes[1].classList.remove(currentSortOrder);
      currentSortColumn.childNodes[1].classList.add("none");
      currentSortColumn = null;
      currentSortOrder = null;
    }
    if (currentSortColumn && this === currentSortColumn) {
      // Already sorted by this column
      if (currentSortOrder == "asc") {
        // Sort by this column, descending order
        bomSortFunction = function(a, b) {
          return -comparator(a, b);
        }
        currentSortColumn.childNodes[1].classList.remove("asc");
        currentSortColumn.childNodes[1].classList.add("desc");
        currentSortOrder = "desc";
      } else {
        // Unsort
        bomSortFunction = null;
        currentSortColumn.childNodes[1].classList.remove("desc");
        currentSortColumn.childNodes[1].classList.add("none");
        currentSortColumn = null;
        currentSortOrder = null;
      }
    } else {
      // Sort by this column, ascending order
      bomSortFunction = comparator;
      currentSortColumn = this;
      currentSortColumn.childNodes[1].classList.remove("none");
      currentSortColumn.childNodes[1].classList.add("asc");
      currentSortOrder = "asc";
    }
    populateBomBody();
  }
  return th;
}

function populateBomHeader() {
  while (bomhead.firstChild) {
    bomhead.removeChild(bomhead.firstChild);
  }
  var tr = document.createElement("TR");
  var th = document.createElement("TH");
  th.classList.add("numCol");
  tr.appendChild(th);
  var checkboxCompareClosure = function(checkbox) {
    return (a, b) => {
      var stateA = getCheckboxState(checkbox, a[3]);
      var stateB = getCheckboxState(checkbox, b[3]);
      if (stateA > stateB) return -1;
      if (stateA < stateB) return 1;
      return 0;
    }
  }
  if (settings.bommode == "netlist") {
    th = createColumnHeader("Net name", "bom-netname", (a, b) => {
      if (a > b) return -1;
      if (a < b) return 1;
      return 0;
    });
    tr.appendChild(th);
  } else {
    for (var checkbox of settings.checkboxes) {
      th = createColumnHeader(
        checkbox, "bom-checkbox", checkboxCompareClosure(checkbox));
      th.onclick = fancyDblClickHandler(
        th, th.onclick.bind(th), checkboxSetUnsetAllHandler(checkbox));
      tr.appendChild(th);
    }
    tr.appendChild(createColumnHeader("References", "References", (a, b) => {
      var i = 0;
      while (i < a[3].length && i < b[3].length) {
        if (a[3][i] != b[3][i]) return a[3][i] > b[3][i] ? 1 : -1;
        i++;
      }
      return a[3].length - b[3].length;
    }));
    // Extra fields
    if (config.extra_fields.length > 0) {
      var extraFieldCompareClosure = function(fieldIndex) {
        return (a, b) => {
          var fa = a[4][fieldIndex];
          var fb = b[4][fieldIndex];
          if (fa != fb) return fa > fb ? 1 : -1;
          else return 0;
        }
      }
      for (var i in config.extra_fields) {
        tr.appendChild(createColumnHeader(
          config.extra_fields[i], "extra", extraFieldCompareClosure(i)));
      }
    }
    tr.appendChild(createColumnHeader("Value", "Value", (a, b) => {
      return valueCompare(a[5], b[5], a[1], b[1]);
    }));
    tr.appendChild(createColumnHeader("Footprint", "Footprint", (a, b) => {
      if (a[2] != b[2]) return a[2] > b[2] ? 1 : -1;
      else return 0;
    }));
    if (settings.bommode == "grouped") {
      tr.appendChild(createColumnHeader("Quantity", "Quantity", (a, b) => {
        return a[3].length - b[3].length;
      }));
    }
  }
  bomhead.appendChild(tr);
}

function populateBomBody() {
  while (bom.firstChild) {
    bom.removeChild(bom.firstChild);
  }
  highlightHandlers = [];
  footprintIndexToHandler = {};
  netsToHandler = {};
  currentHighlightedRowId = null;
  var first = true;
  if (settings.bommode == "netlist") {
    bomtable = pcbdata.nets.slice();
  } else {
    switch (settings.canvaslayout) {
      case 'F':
        bomtable = pcbdata.bom.F.slice();
        break;
      case 'FB':
        bomtable = pcbdata.bom.both.slice();
        break;
      case 'B':
        bomtable = pcbdata.bom.B.slice();
        break;
    }
    if (settings.bommode == "ungrouped") {
      // expand bom table
      expandedTable = []
      for (var bomentry of bomtable) {
        for (var ref of bomentry[3]) {
          expandedTable.push([1, bomentry[1], bomentry[2], [ref], bomentry[4], bomentry[5]]);
        }
      }
      bomtable = expandedTable;
    }
  }
  if (bomSortFunction) {
    bomtable = bomtable.sort(bomSortFunction);
  }
  for (var i in bomtable) {
    var bomentry = bomtable[i];
    if (filter && !entryMatches(bomentry)) {
      continue;
    }
    var references = null;
    var netname = null;
    var tr = document.createElement("TR");
    var td = document.createElement("TD");
    var rownum = +i + 1;
    tr.id = "bomrow" + rownum;
    td.textContent = rownum;
    tr.appendChild(td);
    if (settings.bommode == "netlist") {
      netname = bomentry;
      td = document.createElement("TD");
      td.innerHTML = highlightFilter(netname ? netname : "&lt;no net&gt;");
      tr.appendChild(td);
    } else {
      if (reflookup) {
        references = findRefInEntry(bomentry);
        if (references.length == 0) {
          continue;
        }
      } else {
        references = bomentry[3];
      }
      // Checkboxes
      for (var checkbox of settings.checkboxes) {
        if (checkbox) {
          td = document.createElement("TD");
          var input = document.createElement("input");
          input.type = "checkbox";
          input.onchange = createCheckboxChangeHandler(checkbox, references, tr);
          setBomCheckboxState(checkbox, input, references);
          if (input.checked && settings.darkenWhenChecked == checkbox) {
            tr.classList.add("checked");
          }
          td.appendChild(input);
          tr.appendChild(td);
        }
      }
      // References
      td = document.createElement("TD");
      td.innerHTML = highlightFilter(references.map(r => r[0]).join(", "));
      tr.appendChild(td);
      // Extra fields
      for (var i in config.extra_fields) {
        td = document.createElement("TD");
        td.innerHTML = highlightFilter(bomentry[4][i]);
        tr.appendChild(td);
      }
      // Value
      td = document.createElement("TD");
      td.innerHTML = highlightFilter(bomentry[1]);
      tr.appendChild(td);
      // Footprint
      td = document.createElement("TD");
      td.innerHTML = highlightFilter(bomentry[2]);
      tr.appendChild(td);
      if (settings.bommode == "grouped") {
        // Quantity
        td = document.createElement("TD");
        td.textContent = bomentry[3].length;
        tr.appendChild(td);
      }
    }
    bom.appendChild(tr);
    var handler = createRowHighlightHandler(tr.id, references, netname);
    tr.onmousemove = handler;
    highlightHandlers.push({
      id: tr.id,
      handler: handler,
    });
    if (references !== null) {
      for (var refIndex of references.map(r => r[1])) {
        footprintIndexToHandler[refIndex] = handler;
      }
    }
    if (netname !== null) {
      netsToHandler[netname] = handler;
    }
    if ((filter || reflookup) && first) {
      handler();
      first = false;
    }
  }
  EventHandler.emitEvent(
    IBOM_EVENT_TYPES.BOM_BODY_CHANGE_EVENT,
    {
      filter: filter,
      reflookup: reflookup,
      checkboxes: settings.checkboxes,
      bommode: settings.bommode,
    });
}

function highlightPreviousRow() {
  if (!currentHighlightedRowId) {
    highlightHandlers[highlightHandlers.length - 1].handler();
  } else {
    if (highlightHandlers.length > 1 &&
      highlightHandlers[0].id == currentHighlightedRowId) {
      highlightHandlers[highlightHandlers.length - 1].handler();
    } else {
      for (var i = 0; i < highlightHandlers.length - 1; i++) {
        if (highlightHandlers[i + 1].id == currentHighlightedRowId) {
          highlightHandlers[i].handler();
          break;
        }
      }
    }
  }
  smoothScrollToRow(currentHighlightedRowId);
}

function highlightNextRow() {
  if (!currentHighlightedRowId) {
    highlightHandlers[0].handler();
  } else {
    if (highlightHandlers.length > 1 &&
      highlightHandlers[highlightHandlers.length - 1].id == currentHighlightedRowId) {
      highlightHandlers[0].handler();
    } else {
      for (var i = 1; i < highlightHandlers.length; i++) {
        if (highlightHandlers[i - 1].id == currentHighlightedRowId) {
          highlightHandlers[i].handler();
          break;
        }
      }
    }
  }
  smoothScrollToRow(currentHighlightedRowId);
}

function populateBomTable() {
  populateBomHeader();
  populateBomBody();
}

function footprintsClicked(footprintIndexes) {
  var lastClickedIndex = footprintIndexes.indexOf(lastClicked);
  for (var i = 1; i <= footprintIndexes.length; i++) {
    var refIndex = footprintIndexes[(lastClickedIndex + i) % footprintIndexes.length];
    if (refIndex in footprintIndexToHandler) {
      lastClicked = refIndex;
      footprintIndexToHandler[refIndex]();
      smoothScrollToRow(currentHighlightedRowId);
      break;
    }
  }
}

function netClicked(net) {
  if (net in netsToHandler) {
    netsToHandler[net]();
    smoothScrollToRow(currentHighlightedRowId);
  } else {
    clearHighlightedFootprints();
    highlightedNet = net;
    drawHighlights();
  }
}

function updateFilter(input) {
  filter = input.toLowerCase();
  populateBomTable();
}

function updateRefLookup(input) {
  reflookup = input.toLowerCase();
  populateBomTable();
}

function changeCanvasLayout(layout) {
  document.getElementById("fl-btn").classList.remove("depressed");
  document.getElementById("fb-btn").classList.remove("depressed");
  document.getElementById("bl-btn").classList.remove("depressed");
  switch (layout) {
    case 'F':
      document.getElementById("fl-btn").classList.add("depressed");
      if (settings.bomlayout != "bom-only") {
        canvassplit.collapse(1);
      }
      break;
    case 'B':
      document.getElementById("bl-btn").classList.add("depressed");
      if (settings.bomlayout != "bom-only") {
        canvassplit.collapse(0);
      }
      break;
    default:
      document.getElementById("fb-btn").classList.add("depressed");
      if (settings.bomlayout != "bom-only") {
        canvassplit.setSizes([50, 50]);
      }
  }
  settings.canvaslayout = layout;
  writeStorage("canvaslayout", layout);
  resizeAll();
  changeBomMode(settings.bommode);
}

function populateMetadata() {
  document.getElementById("title").innerHTML = pcbdata.metadata.title;
  document.getElementById("revision").innerHTML = "Rev: " + pcbdata.metadata.revision;
  document.getElementById("company").innerHTML = pcbdata.metadata.company;
  document.getElementById("filedate").innerHTML = pcbdata.metadata.date;
  if (pcbdata.metadata.title != "") {
    document.title = pcbdata.metadata.title + " BOM";
  }
  // Calculate board stats
  var fp_f = 0, fp_b = 0, pads_f = 0, pads_b = 0, pads_th = 0;
  for (var i = 0; i < pcbdata.footprints.length; i++) {
    if (pcbdata.bom.skipped.includes(i)) continue;
    var mod = pcbdata.footprints[i];
    if (mod.layer == "F") {
      fp_f++;
    } else {
      fp_b++;
    }
    for (var pad of mod.pads) {
      if (pad.type == "th") {
        pads_th++;
      } else {
        if (pad.layers.includes("F")) {
          pads_f++;
        }
        if (pad.layers.includes("B")) {
          pads_b++;
        }
      }
    }
  }
  document.getElementById("stats-components-front").innerHTML = fp_f;
  document.getElementById("stats-components-back").innerHTML = fp_b;
  document.getElementById("stats-components-total").innerHTML = fp_f + fp_b;
  document.getElementById("stats-groups-front").innerHTML = pcbdata.bom.F.length;
  document.getElementById("stats-groups-back").innerHTML = pcbdata.bom.B.length;
  document.getElementById("stats-groups-total").innerHTML = pcbdata.bom.both.length;
  document.getElementById("stats-smd-pads-front").innerHTML = pads_f;
  document.getElementById("stats-smd-pads-back").innerHTML = pads_b;
  document.getElementById("stats-smd-pads-total").innerHTML = pads_f + pads_b;
  document.getElementById("stats-th-pads").innerHTML = pads_th;
  // Update version string
  document.getElementById("github-link").innerHTML = "InteractiveHtmlBom&nbsp;" +
    /^v\d+\.\d+/.exec(pcbdata.ibom_version)[0];
}

function changeBomLayout(layout) {
  document.getElementById("bom-btn").classList.remove("depressed");
  document.getElementById("lr-btn").classList.remove("depressed");
  document.getElementById("tb-btn").classList.remove("depressed");
  switch (layout) {
    case 'bom-only':
      document.getElementById("bom-btn").classList.add("depressed");
      if (bomsplit) {
        bomsplit.destroy();
        bomsplit = null;
        canvassplit.destroy();
        canvassplit = null;
      }
      document.getElementById("frontcanvas").style.display = "none";
      document.getElementById("backcanvas").style.display = "none";
      document.getElementById("bot").style.height = "";
      break;
    case 'top-bottom':
      document.getElementById("tb-btn").classList.add("depressed");
      document.getElementById("frontcanvas").style.display = "";
      document.getElementById("backcanvas").style.display = "";
      document.getElementById("bot").style.height = "calc(100% - 80px)";
      document.getElementById("bomdiv").classList.remove("split-horizontal");
      document.getElementById("canvasdiv").classList.remove("split-horizontal");
      document.getElementById("frontcanvas").classList.add("split-horizontal");
      document.getElementById("backcanvas").classList.add("split-horizontal");
      if (bomsplit) {
        bomsplit.destroy();
        bomsplit = null;
        canvassplit.destroy();
        canvassplit = null;
      }
      bomsplit = Split(['#bomdiv', '#canvasdiv'], {
        sizes: [50, 50],
        onDragEnd: resizeAll,
        direction: "vertical",
        gutterSize: 5
      });
      canvassplit = Split(['#frontcanvas', '#backcanvas'], {
        sizes: [50, 50],
        gutterSize: 5,
        onDragEnd: resizeAll
      });
      break;
    case 'left-right':
      document.getElementById("lr-btn").classList.add("depressed");
      document.getElementById("frontcanvas").style.display = "";
      document.getElementById("backcanvas").style.display = "";
      document.getElementById("bot").style.height = "calc(100% - 80px)";
      document.getElementById("bomdiv").classList.add("split-horizontal");
      document.getElementById("canvasdiv").classList.add("split-horizontal");
      document.getElementById("frontcanvas").classList.remove("split-horizontal");
      document.getElementById("backcanvas").classList.remove("split-horizontal");
      if (bomsplit) {
        bomsplit.destroy();
        bomsplit = null;
        canvassplit.destroy();
        canvassplit = null;
      }
      bomsplit = Split(['#bomdiv', '#canvasdiv'], {
        sizes: [50, 50],
        onDragEnd: resizeAll,
        gutterSize: 5
      });
      canvassplit = Split(['#frontcanvas', '#backcanvas'], {
        sizes: [50, 50],
        gutterSize: 5,
        direction: "vertical",
        onDragEnd: resizeAll
      });
  }
  settings.bomlayout = layout;
  writeStorage("bomlayout", layout);
  changeCanvasLayout(settings.canvaslayout);
}

function changeBomMode(mode) {
  document.getElementById("bom-grouped-btn").classList.remove("depressed");
  document.getElementById("bom-ungrouped-btn").classList.remove("depressed");
  document.getElementById("bom-netlist-btn").classList.remove("depressed");
  switch (mode) {
    case 'grouped':
      document.getElementById("bom-grouped-btn").classList.add("depressed");
      break;
    case 'ungrouped':
      document.getElementById("bom-ungrouped-btn").classList.add("depressed");
      break;
    case 'netlist':
      document.getElementById("bom-netlist-btn").classList.add("depressed");
  }
  writeStorage("bommode", mode);
  if (mode != settings.bommode) {
    settings.bommode = mode;
    bomSortFunction = null;
    currentSortColumn = null;
    currentSortOrder = null;
    clearHighlightedFootprints();
  }
  populateBomTable();
}

function focusFilterField() {
  focusInputField(document.getElementById("filter"));
}

function focusRefLookupField() {
  focusInputField(document.getElementById("reflookup"));
}

function toggleBomCheckbox(bomrowid, checkboxnum) {
  if (!bomrowid || checkboxnum > settings.checkboxes.length) {
    return;
  }
  var bomrow = document.getElementById(bomrowid);
  var checkbox = bomrow.childNodes[checkboxnum].childNodes[0];
  checkbox.checked = !checkbox.checked;
  checkbox.indeterminate = false;
  checkbox.onchange();
}

function checkBomCheckbox(bomrowid, checkboxname) {
  var checkboxnum = 0;
  while (checkboxnum < settings.checkboxes.length &&
    settings.checkboxes[checkboxnum].toLowerCase() != checkboxname.toLowerCase()) {
    checkboxnum++;
  }
  if (!bomrowid || checkboxnum >= settings.checkboxes.length) {
    return;
  }
  var bomrow = document.getElementById(bomrowid);
  var checkbox = bomrow.childNodes[checkboxnum + 1].childNodes[0];
  checkbox.checked = true;
  checkbox.indeterminate = false;
  checkbox.onchange();
}

function setBomCheckboxes(value) {
  writeStorage("bomCheckboxes", value);
  settings.checkboxes = value.split(",").filter((e) => e);
  prepCheckboxes();
  populateBomTable();
  populateDarkenWhenCheckedOptions();
}

function setDarkenWhenChecked(value) {
  writeStorage("darkenWhenChecked", value);
  settings.darkenWhenChecked = value;
  populateBomTable();
}

function prepCheckboxes() {
  var table = document.getElementById("checkbox-stats");
  while (table.childElementCount > 1) {
    table.removeChild(table.lastChild);
  }
  if (settings.checkboxes.length) {
    table.style.display = "";
  } else {
    table.style.display = "none";
  }
  for (var checkbox of settings.checkboxes) {
    var tr = document.createElement("TR");
    var td = document.createElement("TD");
    td.innerHTML = checkbox;
    tr.appendChild(td);
    td = document.createElement("TD");
    td.id = "checkbox-stats-" + checkbox;
    var progressbar = document.createElement("div");
    progressbar.classList.add("bar");
    td.appendChild(progressbar);
    var text = document.createElement("div");
    text.classList.add("text");
    td.appendChild(text);
    tr.appendChild(td);
    table.appendChild(tr);
    updateCheckboxStats(checkbox);
  }
}

function populateDarkenWhenCheckedOptions() {
  var container = document.getElementById("darkenWhenCheckedContainer");

  if (settings.checkboxes.length == 0) {
    container.parentElement.style.display = "none";
    return;
  }

  container.innerHTML = '';
  container.parentElement.style.display = "inline-block";

  function createOption(name, displayName) {
    var id = "darkenWhenChecked-" + name;

    var div = document.createElement("div");
    div.classList.add("radio-container");

    var input = document.createElement("input");
    input.type = "radio";
    input.name = "darkenWhenChecked";
    input.value = name;
    input.id = id;
    input.onchange = () => setDarkenWhenChecked(name);
    div.appendChild(input);

    // Preserve the selected element when the checkboxes change
    if (name == settings.darkenWhenChecked) {
      input.checked = true;
    }

    var label = document.createElement("label");
    label.innerHTML = displayName;
    label.htmlFor = id;
    div.appendChild(label);

    container.appendChild(div);
  }
  createOption("", "None");
  for (var checkbox of settings.checkboxes) {
    createOption(checkbox, checkbox);
  }
}

function updateCheckboxStats(checkbox) {
  var checked = getStoredCheckboxRefs(checkbox).size;
  var total = pcbdata.footprints.length - pcbdata.bom.skipped.length;
  var percent = checked * 100.0 / total;
  var td = document.getElementById("checkbox-stats-" + checkbox);
  td.firstChild.style.width = percent + "%";
  td.lastChild.innerHTML = checked + "/" + total + " (" + Math.round(percent) + "%)";
}

document.onkeydown = function(e) {
  switch (e.key) {
    case "n":
      if (document.activeElement.type == "text") {
        return;
      }
      if (currentHighlightedRowId !== null) {
        checkBomCheckbox(currentHighlightedRowId, "placed");
        highlightNextRow();
        e.preventDefault();
      }
      break;
    case "ArrowUp":
      highlightPreviousRow();
      e.preventDefault();
      break;
    case "ArrowDown":
      highlightNextRow();
      e.preventDefault();
      break;
    default:
      break;
  }
  if (e.altKey) {
    switch (e.key) {
      case "f":
        focusFilterField();
        e.preventDefault();
        break;
      case "r":
        focusRefLookupField();
        e.preventDefault();
        break;
      case "z":
        changeBomLayout("bom-only");
        e.preventDefault();
        break;
      case "x":
        changeBomLayout("left-right");
        e.preventDefault();
        break;
      case "c":
        changeBomLayout("top-bottom");
        e.preventDefault();
        break;
      case "v":
        changeCanvasLayout("F");
        e.preventDefault();
        break;
      case "b":
        changeCanvasLayout("FB");
        e.preventDefault();
        break;
      case "n":
        changeCanvasLayout("B");
        e.preventDefault();
        break;
      default:
        break;
    }
    if (e.key >= '1' && e.key <= '9') {
      toggleBomCheckbox(currentHighlightedRowId, parseInt(e.key));
    }
  }
}

function hideNetlistButton() {
  document.getElementById("bom-ungrouped-btn").classList.remove("middle-button");
  document.getElementById("bom-ungrouped-btn").classList.add("right-most-button");
  document.getElementById("bom-netlist-btn").style.display = "none";
}

window.onload = function(e) {
  initUtils();
  initRender();
  initStorage();
  initDefaults();
  cleanGutters();
  populateMetadata();
  dbgdiv = document.getElementById("dbg");
  bom = document.getElementById("bombody");
  bomhead = document.getElementById("bomhead");
  filter = "";
  reflookup = "";
  if (!("nets" in pcbdata)) {
    hideNetlistButton();
  }
  initDone = true;
  prepCheckboxes();
  // Triggers render
  changeBomLayout(settings.bomlayout);

  // Users may leave fullscreen without touching the checkbox. Uncheck.
  document.addEventListener('fullscreenchange', () => {
    if (!document.fullscreenElement)
      document.getElementById('fullscreenCheckbox').checked = false;
  });
}

window.onresize = resizeAll;
window.matchMedia("print").addListener(resizeAll);

///////////////////////////////////////////////

///////////////////////////////////////////////
 
///////////////////////////////////////////////
  </script>
</head>

<body>
<!-- USERHEADER -->
<div id="topmostdiv" class="topmostdiv">
  <div id="top">
    <div style="float: right; height: 100%;">
      <div class="hideonprint menu" style="float: right; top: 8px;">
        <button class="menubtn"></button>
        <div class="menu-content">
          <label class="menu-label menu-label-top" style="width: calc(50% - 18px)">
            <input id="darkmodeCheckbox" type="checkbox" onchange="setDarkMode(this.checked)">
            Dark mode
          </label><!-- This comment eats space! All of it!
          --><label class="menu-label menu-label-top" style="width: calc(50% - 17px); border-left: 0;">
            <input id="fullscreenCheckbox" type="checkbox" onchange="setFullscreen(this.checked)">
            Full Screen
          </label>
          <label class="menu-label" style="width: calc(50% - 18px)">
            <input id="fabricationCheckbox" type="checkbox" checked onchange="fabricationVisible(this.checked)">
            Fab layer
          </label><!-- This comment eats space! All of it!
          --><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
            <input id="silkscreenCheckbox" type="checkbox" checked onchange="silkscreenVisible(this.checked)">
            Silkscreen
          </label>
          <label class="menu-label" style="width: calc(50% - 18px)">
            <input id="referencesCheckbox" type="checkbox" checked onchange="referencesVisible(this.checked)">
            References
          </label><!-- This comment eats space! All of it!
          --><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
            <input id="valuesCheckbox" type="checkbox" checked onchange="valuesVisible(this.checked)">
            Values
          </label>
          <div id="tracksAndZonesCheckboxes">
            <label class="menu-label" style="width: calc(50% - 18px)">
              <input id="tracksCheckbox" type="checkbox" checked onchange="tracksVisible(this.checked)">
              Tracks
            </label><!-- This comment eats space! All of it!
            --><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
              <input id="zonesCheckbox" type="checkbox" checked onchange="zonesVisible(this.checked)">
              Zones
            </label>
          </div>
          <label class="menu-label" style="width: calc(50% - 18px)">
            <input id="padsCheckbox" type="checkbox" checked onchange="padsVisible(this.checked)">
            Pads
          </label><!-- This comment eats space! All of it!
          --><label class="menu-label" style="width: calc(50% - 17px); border-left: 0;">
            <input id="dnpOutlineCheckbox" type="checkbox" checked onchange="dnpOutline(this.checked)">
            DNP outlined
          </label>
          <label class="menu-label">
            <input id="highlightpin1Checkbox" type="checkbox" onchange="setHighlightPin1(this.checked)">
            Highlight first pin
          </label>
          <label class="menu-label">
            <input id="dragCheckbox" type="checkbox" checked onchange="setRedrawOnDrag(this.checked)">
            Continuous redraw on drag
          </label>
          <label class="menu-label">
            <input id="crosshairCheckbox" type="checkbox" checked onchange="setShowCrosshair(this.checked)">
            Show Crosshair
          </label>
          <label class="menu-label">
            <span>Board rotation</span>
            <span style="float: right"><span id="rotationDegree">0</span>&#176;</span>
            <input id="boardRotation" type="range" min="-36" max="36" value="0" class="slider" oninput="setBoardRotation(this.value)">
          </label>
          <label class="menu-label">
            <div style="margin-left: 5px">Bom checkboxes</div>
            <input id="bomCheckboxes" class="menu-textbox" type=text
                   oninput="setBomCheckboxes(this.value)">
          </label>
          <label class="menu-label">
            <div style="margin-left: 5px">Darken when checked</div>
            <div id="darkenWhenCheckedContainer"></div>
          </label>
          <label class="menu-label">
            <span class="shameless-plug">
              <span>Created using</span>
              <a id="github-link" target="blank" href="https://github.com/openscopeproject/InteractiveHtmlBom">InteractiveHtmlBom</a>
            </span>
          </label>
        </div>
      </div>
      <div class="button-container hideonprint"
           style="float: right; position: relative; top: 8px">
        <button id="fl-btn" class="left-most-button" onclick="changeCanvasLayout('F')"
                title="Front only">F
        </button>
        <button id="fb-btn" class="middle-button" onclick="changeCanvasLayout('FB')"
                title="Front and Back">FB
        </button>
        <button id="bl-btn" class="right-most-button" onclick="changeCanvasLayout('B')"
                title="Back only">B
        </button>
      </div>
      <div class="button-container hideonprint"
           style="float: right; position: relative; top: 8px">
        <button id="bom-btn" class="left-most-button" onclick="changeBomLayout('bom-only')"
                title="BOM only"></button>
        <button id="lr-btn" class="middle-button" onclick="changeBomLayout('left-right')"
                title="BOM left, drawings right"></button>
        <button id="tb-btn" class="right-most-button" onclick="changeBomLayout('top-bottom')"
                title="BOM top, drawings bot"></button>
      </div>
      <div class="button-container hideonprint"
           style="float: right; position: relative; top: 8px">
        <button id="bom-grouped-btn" class="left-most-button" onclick="changeBomMode('grouped')"
                title="Grouped BOM"></button>
        <button id="bom-ungrouped-btn" class="middle-button" onclick="changeBomMode('ungrouped')"
                title="Ungrouped BOM"></button>
        <button id="bom-netlist-btn" class="right-most-button" onclick="changeBomMode('netlist')"
                title="Netlist"></button>
      </div>
      <div class="hideonprint menu" style="float: right; top: 8px;">
        <button class="statsbtn"></button>
        <div class="menu-content">
          <table class="stats">
            <tbody>
              <tr>
                <td width="40%">Board stats</td>
                <td>Front</td>
                <td>Back</td>
                <td>Total</td>
              </tr>
              <tr>
                <td>Components</td>
                <td id="stats-components-front">~</td>
                <td id="stats-components-back">~</td>
                <td id="stats-components-total">~</td>
              </tr>
              <tr>
                <td>Groups</td>
                <td id="stats-groups-front">~</td>
                <td id="stats-groups-back">~</td>
                <td id="stats-groups-total">~</td>
              </tr>
              <tr>
                <td>SMD pads</td>
                <td id="stats-smd-pads-front">~</td>
                <td id="stats-smd-pads-back">~</td>
                <td id="stats-smd-pads-total">~</td>
              </tr>
              <tr>
                <td>TH pads</td>
                <td colspan=3 id="stats-th-pads">~</td>
              </tr>
            </tbody>
          </table>
          <table class="stats">
            <col width="40%"/><col />
            <tbody id="checkbox-stats">
              <tr>
                <td colspan=2 style="border-top: 0">Checkboxes</td>
              </tr>
            </tbody>
          </table>
        </div>
      </div>
      <div class="hideonprint menu" style="float: right; top: 8px;">
        <button class="iobtn"></button>
        <div class="menu-content">
          <div class="menu-label menu-label-top">
            <div style="margin-left: 5px;">Save board image</div>
            <div class="flexbox">
              <input id="render-save-width" class="menu-textbox" type="text" value="1000" placeholder="Width"
                  style="flex-grow: 1; width: 50px;" oninput="validateSaveImgDimension(this)">
              <span>X</span>
              <input id="render-save-height" class="menu-textbox" type="text" value="1000" placeholder="Height"
                  style="flex-grow: 1; width: 50px;" oninput="validateSaveImgDimension(this)">
            </div>
            <label>
              <input id="render-save-transparent" type="checkbox">
              Transparent background
            </label>
            <div class="flexbox">
              <button class="savebtn" onclick="saveImage('F')">Front</button>
              <button class="savebtn" onclick="saveImage('B')">Back</button>
            </div>
          </div>
          <div class="menu-label">
            <span style="margin-left: 5px;">Config and checkbox state</span>
            <div class="flexbox">
              <button class="savebtn" onclick="saveSettings()">Export</button>
              <button class="savebtn" onclick="loadSettings()">Import</button>
            </div>
          </div>
        </div>
      </div>
    </div>
    <div id="fileinfodiv" style="overflow: auto;">
      <table class="fileinfo">
        <tbody>
          <tr>
            <td id="title" class="title" style="width: 70%">
              Title
            </td>
            <td id="revision" class="title" style="width: 30%">
              Revision
            </td>
          </tr>
          <tr>
            <td id="company">
              Company
            </td>
            <td id="filedate">
              Date
            </td>
          </tr>
        </tbody>
      </table>
    </div>
  </div>
  <div id="bot" class="split" style="height: calc(100% - 80px)">
    <div id="bomdiv" class="split split-horizontal">
      <div style="width: 100%">
        <input id="reflookup" class="textbox searchbox reflookup hideonprint" type="text" placeholder="Ref lookup"
               oninput="updateRefLookup(this.value)">
        <input id="filter" class="textbox searchbox filter hideonprint" type="text" placeholder="Filter"
               oninput="updateFilter(this.value)">
        <div class="button-container hideonprint" style="float: left; margin: 0;">
          <button id="copy" title="Copy bom table to clipboard"
               onclick="copyToClipboard()"></button>
        </div>
      </div>
      <div id="dbg"></div>
      <table class="bom">
        <thead id="bomhead">
        </thead>
        <tbody id="bombody">
        </tbody>
      </table>
    </div>
    <div id="canvasdiv" class="split split-horizontal">
      <div id="frontcanvas" class="split" touch-action="none" style="overflow: hidden">
        <div style="position: relative; width: 100%; height: 100%;">
          <canvas id="F_bg" style="position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
          <canvas id="F_fab" style="position: absolute; left: 0; top: 0; z-index: 1;"></canvas>
          <canvas id="F_slk" style="position: absolute; left: 0; top: 0; z-index: 2;"></canvas>
          <canvas id="F_hl" style="position: absolute; left: 0; top: 0; z-index: 3;"></canvas>
        </div>
      </div>
      <div id="backcanvas" class="split" touch-action="none" style="overflow: hidden">
        <div style="position: relative; width: 100%; height: 100%;">
          <canvas id="B_bg" style="position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
          <canvas id="B_fab" style="position: absolute; left: 0; top: 0; z-index: 1;"></canvas>
          <canvas id="B_slk" style="position: absolute; left: 0; top: 0; z-index: 2;"></canvas>
          <canvas id="B_hl" style="position: absolute; left: 0; top: 0; z-index: 3;"></canvas>
        </div>
      </div>
    </div>
  </div>
</div>
<!-- USERFOOTER -->
</body>

</html>
